O365 Architecting SharePoint – Connecting The Dots: Part III

If you haven’t, please review Part II prior to reading the rest of this article.

From an Enterprise Intranet Perspective, your business and more specifically, the Executive Leadership/Management, has an agenda around what will be surfaced on the Home Page of the “Enterprise Level” Intranet environment.

I need to clear here that the scope of this article is the Enterprise Level Intranet Home Page. [This article does NOT relate to other sites found in O365 such as: collaboration, groups, communities, project, team, profile/my site, etc.]

The content most likely to appear and that you would expect on an intranet home page should resemble the likes of the front page of USA Today … minus all of the advertising.

As we reference your favorite News Site, take note of the various sections with each having a distinct purpose to Inform, Educate and Engage the target audience(s).

  • Top Stories
    • [purpose] broaden audience awareness of, to inform about, to educate, to engage the audience in whatever the next steps might be;
    • [appeal] include image and quick summary
    • [feature] audience can click on the story for more details
  • Our Picks
    • [purpose] promote a specific topic, feature, person, area, etc.
    • [appeal] include image and quick summary
    • [feature] audience can click on the story for more details
  • Videos
    • [purpose] promote a specific topic, feature, person, area, etc.
    • [appeal] include image and quick summary
    • [feature] audience can click on the video for more details
  • Money, Sports, Tech, Travel, Reviewed, Experience, Voices, etc.
    • similar purpose, appeal and feature characteristics; keep concise for topic

Writing For The Web

Writing well-formed stories for consumption by your Intranet audience is different than writing a document or an email. You have to begin to structure your content more inline with those in the Marketing and Communications specialties. More inline with the likes of a newspaper. Why?

  1. There is limited space on the intranet Home Page
  2. Not everyone is interested in the same thing
  3. New employees will seek differently than seasoned employees
  4. You want to feature the most important relevant content highest
  5. You want your employees to be informed, educated and engaged
  6. You want your employees to review what’s on the intranet and then “Get Back to Work”

Within each section/topic, you may provide a series of images each with their own summary that your audience can click on for greater detail. Some content owners will need to Write News Stories and get better versed in Writing For The Web. It’s not difficult but it requires more discipline in the finer techniques of writing.

What Not To Wear On Your Intranet

From the Executive Leadership/Management perspective, how should your intranet be dressed. What intranet apparel and appeal represents your business well. What exemplifies the Mission, Vision and Values of the business best. What will support the overall expectations and culture of the business journey.

Have you ever thought of the intranet home page being a reflection of the priorities, the character, the thoughts, the behaviors, the trust, the integrity and ultimately the identity of Executive Leadership/Management.

The intranet is an inward expression to the employees of the inherent culture of any business… similar to an expressed identity. Like the favorite speech from Animal House, words and expressions mean everything to affirming and strengthening the Identity of a group, business, family, etc.

Signs You Have Strayed From The Intranet Strategy

A few examples around the intended or in-intended messages that may be conveyed by surfacing specific content on the Enterprise Intranet Home Page:

  • #1 [Home Page Content] Todays Weather is front and center on the intranet
    [Intent] The weather should be my top priority as well; there may be a fire or tornado drill soon so dress accordingly.
  • #2 [Home Page Content] My outlook email is front and center on the intranet
    [Intent] Looking at my email should be my top priority.
  • #3 [Home Page Content] My outlook tasks is front and center on the intranet
    [Intent] Looking at my tasks should be my top priority.
  • #4 [Home Page Content] A carousel of stories is front and center on the intranet
    [Intent] Watching the carousel of stories until they no longer repeat should be my top priority.

The intent of each section on the Intranet Home Page must have a unique purpose, must fulfill specific objectives and must be clearly communicated throughout the entire organization and be relevant to new and seasoned employees alike.

The above examples are usually the first requirements expressed by the major stakeholders of an intranet until they realize that they really don’t match well with the overall Intranet objectives and that there are other places within Office 365 where these requirements are already being met.

I have actually experienced the above scenarios with clients and have included references to 14 signs you’ve lost the intranet plot to demonstrate common abuses of the Enterprise Intranet Home Page for other consulting perspectives. Protect against the Intranet Killers and for the best results, align with the Intranet Strategy.


So you want a great intranet, here are some resources (wireframes, screenshots, examples) for your review.


Posted in Uncategorized | Leave a comment

O365 Architecting SharePoint – Connecting The Dots: Part II

If you haven’t, please review Part I prior to reading the rest of this article.

So, the question posed of me recently was this, “How Do We Get There“? Now that our consulting team has worked with Executive Leadership, major stakeholders and others to document the Intranet Strategy, Objectives and developed a list of prioritized Requirements and possibly even put together a Rough Product/Platform Roadmap, where do we go from here?

Let’s take a pause as the tendency at this point is …

  • to engage the Marketing Group, put them all in a cozy room with white boards and marker friendly walls and start sketching to their hearts desire
  • to engage IS and line up the Development Team to size the DEV, TEST, CAT, PROD environments and order all of the hardware and get ready to beef up the server room

Let’s stop and think about where we are right now. It’s almost January 2017. We are not quite there yet so no need for the markers and sketch boards.

Technology Choice

My next step is to ask, “what technology is to be used?” In our scenario, let’s assume we will be using the Office 365 platform, that we will be using SharePoint Online and we are licensed with a E3-E5 enterprise subscription.

This means we will have access to 98-100% of the apps available in the platform for maximum integration, efficiency and effectiveness. If your enterprise has E3 or E5, the 80/20 rule shifts more to a 90/20 rule where we can utilize a bunch of cool apps, the integration is seamless and we have the following features and tools available within the platform:

  • Single Sign-On
  • Enterprise Search
  • Power BI
  • Power Apps
  • Flow
  • Mail, Calendar, People, Tasks
  • Word, Excel, PowerPoint, Sway
  • Delve, My Site, Profile
  • Yammer, Newfeeds, Groups
  • Video Portal
  • Enterprise Portal
  • Community Portal
  • Planner Portal
  • Project Portal
  • One Note, One Drive

Reality Check

Just like when we are in a place where we are not familiar, we need to stop and get our bearings.

As we have decided to use Office 365 with all of the bells and whistles, we need to get some real life demos to understand the “OUT OF THE BOX” user experience such as:

  • what are all of these tools and their related features and functionalities
  • how do the tools integrate with one another
  • what types of scenarios do we need to handle
  • how can the tools be used to build cross-functional solutions
  • what is the user experience with these solutions

This is the POC reality check. We have chosen the platform but we NEED to take it for a TEST DRIVE to ensure it provides comfort, features, functionalities, handling, gas mileage, maintenance expectations, payment plan, intuitive ease of use, etc.

This is our time to ensure the platform meets and/or exceeds our original Strategy, Objectives and our more detailed list of requirements in a more tangible sense. We are investing for the long-term and the final sign-off is around the corner. We need everyone on the same page at this point.

SharePoint Solution Architect

This has been my sweet spot over the last 10 years … architecting multi-tool cross-functional solutions across the Microsoft SharePoint platform. I have hands-on experience working with the platform through the versions of 2003, 2007, 2010, 2013 and now O365/SharePoint Online/2016.

From an intranet perspective as we prepare for the long-term, you want to achieve all of the following for maximum efficiency and effectiveness:

  • KISS principle NOT Rube Goldberg machine
  • configuration NOT customization
  • features NOT development
  • themes NOT branding files
  • minutes/hours to market NOT months/years to market
  • value center NOT cost center
  • pizza NOT pazzaz
  • function NOT lipstick
  • empower NOT restrict
  • services NOT complaints

At this point, we are at the “What’s Possible Stage“. If your organization is at this stage of the game and there is NO SharePoint Solution Architect involved, you need to tie shut the money bag and find one.

You are simply throwing good money after bad at this point, if you do NOT have the proper expertise.

NOTE: The Marketing sketch markers and pads are still not needed as this is the Intranet and the employees are already a captive audience. Use the “OUT OF THE BOX” governance model to add value and quick time to market.

Next Steps

The next steps are simply to follow your roadmap, work on the long hanging fruit requirements list, start small, be successful, add value, rinse and repeat.

Continue with Part III


Posted in Information Architecture, Office 365, SharePoint | Leave a comment

O365 Architecting SharePoint – Connecting The Dots: Part I

Reflecting On The Problem

Our best intentions may be a combination of fun and frustration without the following:
– Knowledge: Thorough Awareness
– Skills: Trained Experience.
– Intelligence: Executed Application.
– Wisdom: Insightful Intelligence.

Knowledge is awareness of the dots
Skill is experience with the dots
Intelligence is applying the dots
Wisdom is connecting the dots

As a child, I always enjoyed the coloring books where the exercise of connecting the dots was required to fully understand the picture of the person, place or thing prior to performing the next and final step: coloring the picture! I think this is somewhat a lost art; and frankly, one that is simply missed during the typical SharePoint implementations.

What do I mean by that last statement?

Executive Strategy

The resource creating a measurable intranet strategy provides some great details towards ensuring the right things are being worked on for the right reasons by the right people with the right goals and smart objectives that align to the business strategy and value, etc.

I am often as guilty as the next person in my myopic perspective of blindly following the crowd more times than naught just because sometimes I get tired of being blindly hit in the face by the successive waves that often follow those that blaze the pioneering trails. As a friend of mine often stated, you can pick out the pioneers in company X because they are the ones with arrows in their a**. Blazing a trail is not easy and often goes against the tide; but, it is necessary.

I would have to say that in my consulting role, talking with the executives, major/minor stakeholders and various business entities is the easier part of the journey along with documenting the said results. The next phase is where the rubber hits the road and all hell breaks lose and the decision about what technology is needed to make this engine run and run well can be formidable.

Technology Choice

Microsoft has made the decision of deciding which technology to use for the enterprise intranet an easier task. There are numerous businesses that have chosen the Office 365 platform and then sided with SharePoint for their enterprise content management platform due to the integration points available. The integration tools start with the office tools but then quickly expand to about 20-30 additional apps depending on the E1 through E5 subscription level and licensing that was purchased from Microsoft.

So the tough part is no longer deciding how we are going to accomplish X, it is often simply a matter of subscribing to the level of Office 365 performance and support you want for your enterprise.

The Intranet Is A House

The next major hurdle that often trips up enterprises in the trek for the intranet nirvana is letting go of the old mindsets that have been established and embedded in the organization up to this point. The traditional SDLC model often required the very useful DEV, TEST, CAT, PROD but now this environmental structure has for the most part been relegated to the attic lined with moth balls. To be blunt here, EVERYTHING in Office 365 can be accomplished with simply a PROD environment when the “new” Configuration Model code named “OUT OF THE BOX” is enforced. What do I mean by that?

Microsoft did mountains of research and customer experience trials in its journey to the Office 365 nirvana. This means that Microsoft constructed Office 365 with its apps, configuration settings, environments, site collections, sub-sites, project sites, groups, communities, exchange, planning, yammer, etc. etc. to be the MOST FLEXIBLE for the broadest set of clients, businesses, enterprises, government entities, etc.

Let me dig into this analogy of the intranet being a house; especially, as it pertains to Office 365.

There is a reason why the TASKS app is a separate app within O365.
There is a reason why the PLANNING app is a separate app within O365.
There is a reason WHY every app that is within the Office 365 platform is separate for the same reason there are rooms in your home that are separate. Are you ready? They each have a unique purpose. BOOM! They each have a unique purpose. Too simple I know. Let it sink in.

Let’s think about this a bit more.

Let’s recap …
On the home page of your Office 365 intranet, I don’t want to see my inbox, my tasks, my calendar, my whatever …. in Office 365, IT DOES NOT BELONG THERE. That type of content living on the Home Page and in my face when my browser loads will NOT fulfill the greater strategy of Executive Leadership. It will not. Here’s why. Because the Strategic Vision of the Intranet (aka. what’s on the Home Page and the important Top-Level Navigation Links) as defined by the Executive Leadership should not be confined to my inbox, tasks and calendar.

“There had better be a larger vision for the Intranet Home Page than displaying my Inbox, Tasks and Calendar.”

Let me say that again.

“The content in my Inbox, Tasks and Calendar DO NOT belong on the Intranet Home Page.”

I have heard the arguments such as “we want our employees to understand what tasks they are to work on next, what their calendar looks like and how much time they have open between their various calendar events for each day” and that’s great. BUT here’s what’s wrong with that argument. In the context of Office 365, that information does not belong on the home page.

The HOME PAGE is for content that relates to the HOME PAGE.
Analogy: I park my car in my garage every night because that fulfills the purpose of the garage in the context of my relationship with my car. My car had better not be parked in the kitchen, the living room or the basement OR we have a big problem.

What Content Should Reside On The Intranet Home Page

The content to be managed by the Enterprise Site Owners and surfaced on the Home Page of the intranet should be used to inform, educate and engage the employees across the enterprise.

This is where Executive Leadership again says that “the intranet Home Page is about helping employees get work done.” The problem with that response is that the objectives around getting work done already exist with other apps within Office 365; such as Outlook Email, Tasks, Calendar, Projects, etc. The intranet Home Page is about “Informing, Educating and Engaging” the employees from the perspective of the Executive Leadership group.

From new employees to veteran employees, the intranet Home Page should be “the front door” to experiencing [your business] from the INSIDE. What does that look like?

  • an Enterprise environment with News, important projects, important deadlines, important events, important … etc.
  • a Top-Level Navigation that provides an intuitive flow through the proverbial aisles of those business groups, departments, etc. (navigation similar to the grocery store signs above each aisle)
  • a structure that resembles USA Today newspaper where the front page shows the Top Stories, Top Sports, Top Weather, Top etc. and employees can click on those articles of interest to navigate to the full article, related articles and the archive of articles, etc.
  • a series of links in the Footer and Header that highlight the most used links across the major areas of the company

Three C’s: Content, Clients and Context

“A place for everything and everything in its place.”

There are multiple levels to the intranet house. The simplistic version is this:

  • Enterprise level
    [Ownership: Executive Team and Corporate Entities]
  • Collaboration (Group, Community, Project, Event, Team)
    [Ownership: Site Owner]
  • Personal (My Site, Delve, One Drive)
    [Ownership: Employee]

Each environment has it’s purpose as well.

  • an overarching strategy of what goes in each, who can do what, etc.
  • an overarching governance plan for managing security/permissions
  • an overarching governance plan for managing branding
  • an overarching governance plan for managing features
  • an overarching governance plan for managing content
  • an overarching governance plan for managing communities
  • an overarching governance plan for managing records
  • an overarching governance plan for managing metadata
  • an overarching governance plan for managing external access
  • an overarching governance plan for managing visibility
  • an overarching governance plan for managing search

But What About Branding The Intranet

As the intranet does not need to be “sold” to the internal employees who will be using it day-in and day-out, branding can be synonymous with the broader external branding themes … but why go to all of the work internally for no additional value.

Value? What do I mean by that?

What happens if I don’t brand the internal intranet? Will employees leave? Will employees buy fewer products or more? Will employees feel better about working at the company or worse? Will colors make the difference between staying or leaving? Will branding make we work longer each day? Will branding the intranet reduce project cost? project hours? project paperwork? Will branding make me like what i do more? Will the intranet branding help me think more or less of [your business]? Will the intranet make me like Marlin or Jim more or less?

In my eyes, the answer to each of the prior questions is a resounding “no”. If no additional value is gained, then why do it! Why waste precious time, money and resources?

If you are thinking of branding the Intranet, my experience has resulting in 2 conclusions:

  • the color/style theme should be unique to the intranet; intentionally make it obvious to the employees that they are on the intranet versus the internet site
  • name the intranet so people can label it and refer to it (just “Google It”)

Stop Recreating The Wheel

I may have mentioned this before but I think it’s worth stating again. If an app within the Office 365 platform already exists, don’t recreate the app or duplicate its functionality in whole or in part within the Enterprise environment and especially NOT on the Home Page.

Worth repeating …

If an app within the Office 365 platform already exists, DO NOT recreate the app or duplicate its functionality in whole or in part within the Enterprise environment and especially DO NOT surface that content on the Home Page.

How Do We Get There; or, Are We In Kansas Yet !

Continue with Part II.





Posted in Information Architecture, Office 365, SharePoint | 2 Comments

Using EditModePanel to Solve Web Part Overlay Issue

Technologies: SharePoint 2013, Online; SharePoint Designer 2013

Client Requirement

Recently I’ve  been working with a client on their O365/SharePoint Online intranet. The requirements were such that the Master Page for the home page had a restricted width of approximately 1200px versus simply letting the text and web parts flow the expanse between the left and right margins.

This restriction often causes an issue with web parts overlaying each other when the page is being edited; and more specifically, when the web parts on the page are being modified or configured via the web part properties panel that appears to the right of the page body. The good news is that there is a simple solution that takes just a few minutes to implement and resolves the web part overlay issue.

View web part overlap issue image.

Master Page

In my quest to resolve this issue, I noticed that when performing a Bing or Google search on the keywords of EditModePanelEditModePanelShowInEdit and EditModePanelShowInRead, the end result inevitably pointed to the Master Page as “the” place to add the corrective code. The following link was a great example.: https://msdn.microsoft.com/en-us/library/office/jj822364.aspx

Page Layouts

At the end of the road, I found that the custom page layouts were the final destination for this solution.

One of the great features with SharePoint 2013/Online is the untapped capabilities of the ‘EditModePanel’. This control is very versatile and can assist in the on-the-fly altering of a page layout to better suit the page in edit and display mode when a restricted width has been defined with the Master Page.

Depending on the type of page layout template used, there may already be a section related to the EditModePanel at the top of the template. When I saw that Microsoft had already included a workable example, i was very confident that the style statements were being included in the correct place and adhered to the overall standards of the SharePoint framework.

<PublishingWebControls:EditModePanel runat=”server”>
<!– Styles for edit mode only–> <SharePointWebControls:CssRegistration name=”
<% $SPUrl:~sitecollection/Style Library/~language/Themable/Core Styles/editmode15.css %>” After=”<% $SPUrl:~sitecollection/Style Library/~language/Themable/Core Styles/pagelayouts15.css %>” runat=”server”/>
<style type=”text/css”>
#DeltaPlaceHolderMain {
      float:none; width: 1500px; background-color:white }


The above style statements worked flawless and allowed the width of the page body to be expanded only during the page editing mode. By default, the background color is a bright yellow and something most clients and users probably wont find to appealing.


Let me know if you found this helpful for your project. Leave your comments about this article or reply to kerdirks@yahoo.com with additional questions regarding your project.

A special thanks to all the bloggers whose articles I traversed in my quest for a simplistic solution. And a special thanks to Heather Solomon for her great article and assistance at the end of my journey.

Posted in Master Page, Page Layouts, SharePoint Designer, Web Parts | 1 Comment

Custom Data View Web Part Using Recursion

Purpose: Provide a means to process all of the documents in a document library containing folders or containing the content type of “document set”. A document set functions very similar to a folder structure within SharePoint; and, Folders must be enabled for a document library in order to use a document set content type within it.

By default, a custom DVWP will only process the top-level content within a library or list. The top-level refers to the ‘scope’ being isolated to the folder or document set level. In order to process the content within those containers, there is a slight configuration within the DVWP SPDataSource that must be configured.

Create an .ASPX page and include a custom Data View Web Part displaying a few columns from your favorite list.

Find a line similar to the following and add the Scope=”Recursive” attribute manually:

<SharePoint:SPDataSource runat=”server” DataSourceMode=”List” SelectCommand=”&lt;View&gt;&lt;/View&gt;” UseInternalName=”True” ID=”dataformwebpart2″ Scope=”Recursive”>


Posted in Data View Web Part, SharePoint Designer, Web Parts, XSL | Leave a comment

Highlight List Entries Based on Date Criteria

Technologies: SharePoint 2007-Online; SharePoint Designer 2010-2013; XSL

Purpose: Provide a means to highlight specific entries based on date parameters. Use highlights of yellow, orange and red; otherwise, display the content with a normal font color. This solution is best implemented for those conditions that are more complex than what can be handled with calculated columns.

Create an .ASPX page and include a custom Data View Web Part displaying a few columns from your favorite list.

A sample of XSL using a Choose / When statement to compare dates is shown below.

<td class=”ms-vb”>
<xsl:when test=”ddwrt:DateTimeTick(ddwrt:GenDisplayName(string(ddwrt:Today())))  &gt;= ddwrt:DateTimeTick(ddwrt:GenDisplayName(string(@DestructionDate)))”>
<xsl:attribute name=”style”>
background-color: #FF0000;  <!– Red    //–>
<xsl:attribute name=”style”>
font-weight: normal;
<xsl:value-of select=”@DestructionDate”/>


Posted in Data View Web Part, SharePoint Designer, Web Parts, XSL | Leave a comment

Custom Web Part for Birthday or Anniversary

Technologies: SharePoint 2007-Online; SharePoint Designer 2010-2013; XSL

Purpose: Provide a means to easily manage a list of Contacts and related metadata pertaining to Birthdays, Anniversaries, Engagement Dates, Opportunity Dates, etc. The people and content related to the current month will display. This provides a long-term low maintenance architected solution for an Office Admin or Office Manager role.

Create Contacts List

Column Name                  Column Type

  • Full Name                        People
  • Birth Month                    Choice
  • Anniversary Month      Choice
  • Anniversary Date          Date/Time

Open SharePoint Designer and perform the following operations

Page Setup

  • create a new ASPX page
  • add an empty data view web part
  • insert the data source list of Contacts


  • include only those entries from the Contacts list where the Anniversary Month relates to the current month

<xsl:variable name=”Rows” select=”/dsQueryResponse/Rows/Row[@AnnivMonth=number(ddwrt:FormatDateTime(string(ddwrt:Today()),1033,’MM’))]”/>


  • show the resulting entries in ascending sequence by Last Name


  • insert two(2) columns to display (ie; Name, Anniversary Date)
    * these are place holders for now
  • retain the column header of ‘Name’
  • change the column header of ‘Anniversary Date’ to ‘Service Years’

Column Headers

<tr valign=”top”>
  <th class=”ms-vh” nowrap=”nowrap”>Name</th>
  <th class=”ms-vh” nowrap=”nowrap”>Service Years</th>

Within the template named ‘dvt_1.rowview’, calculate the years of service which is the difference between ‘Today’ and the Anniversary Date

<xsl:variable name=”yearsOfservice”
– number(ddwrt:DateTimeTick(ddwrt:GenDisplayName(string(@AnnivDate))))) div 864000000000)
div 365)”

Column Details

  • display the Contact Name

   <td class=”ms-vb”>
    <xsl:value-of select=”@Title”/>, <xsl:value-of select=”@First_x0020_Name”/>

  • display the Years of Service
    * show the actual number of years when the value is not equal to 0

<td class=”ms-vb”>
    <xsl:when test=”$yearsOfservice != ‘0’”>
 <xsl:value-of select=”$yearsOfservice”/>
 &lt; 1 Hire

That’s it. Short and sweet.

Save the Web Part

  • position your cursor in the detail area of the web part, select the Web Part tab and save the file locally

Insert onto your Page

  • edit the page where the web part will display
  • upload the Web Part
  • insert onto the page and configure as needed

Leave me a comment if you need any assistance with your project.

Enjoy every sandwich !

Posted in Data View Web Part, SharePoint Designer, Web Parts, XSL | Leave a comment