Automate Testing SharePoint Lists with PnP, Angular 2.0 and TypeScript

Bo is a Principal Consultant for ThreeWill. He has 18 years of full lifecycle software development experience.

One thing I’ve never felt like I’ve done very well on SharePoint List centric projects is plan for or support automated testing scenarios.  You know the kind of project where you build an awesome UI and use one or more SharePoint lists as your database. Often these projects have been so quick moving that there just hasn’t been time or budget for those sorts bells and whistles.

Recently I decided to make time and see if I could come up with a solution.  My goal was fairly simple; I wanted to be able to run my Angular 2.0 app locally or as part of an automated test scenario without SharePoint in the mix at all. Then be able to deploy it to SharePoint and have it run there with no code or configuration changes.

One additional consideration I had was that I am using PnP JS Core to wrap the rest API calls rather than going with straight http.  I’m a huge fan of this library for simplifying common SharePoint operations. I also love the PnP PowerShell Commands. Both are basically in my tool belt at all times.  If you are not using PnP just search for Angular 2 MockBackEnd Examples and you should easily find examples where you can replace Angular Http with one of your own that allows you to mock data.  Although I didn’t follow the example all the way through the post Look Ma, No Server: Developing Apps with Angular 2 Mockbackend from Vildan Softic looked promising.

When using PnP JS Core, the implementation offers a way to have your own Custom HttpClientImpl that you can simply plug in when you setup the PnP configuration specifics for your project.  In the main AppModule of my angular project I typically have a call within the constructor to perform this setup.  In the code below I’m setting the fetchClientFactory to my own custom fetchclient that really is only going to play the role of traffic cop for my scenario.

export class AppModule { 

  constructor() {

  setupPnp(): void {
    let url = getBaseHref();
        baseUrl: url,
        headers: { "Accept": "application/json;odata=verbose" },
        fetchClientFactory: () => {
          return new CustomFetchClient();

The customfetchclient is the main reason no configuration is needed to determine if I am running locally or within SharePoint. It simply looks at the Url and if it’s running on localhost it will redirect to the operations workhorse, the MockResponse class, otherwise I simply uses PnP’s fetch client. A key thing to mention here is that unlike the examples provided on Custom HttpClientImpl I decided to inherit their fetchclient rather than fully implement my own based on their interface. I honestly didn’t want to have to redo all that work they accomplish behind the super.fetch call in my code below.

import { FetchOptions, FetchClient } from 'sp-pnp-js';
import { MockResponse } from './mocks/mockresponse';

export class CustomFetchClient extends FetchClient {
    fetch(url: string, options: FetchOptions): Promise {
        if (url.startsWith("http://localhost")) {
            return new MockResponse().fetch(url, options);
        else {
            return super.fetch(url, options);

MockResponse is where things get messy and in my experiment it’s still not as clean, configurable and magical as I would like it to be. This is version .1 of my code so this is to be expected I guess. However, it works and will just require some “upkeep” for our project to plug in additional mock data and other mocking constructs as needed along the way. Below is the only public method of the class and just deterimes which private method needs to handle the request, do the work and return a mocked response. You’ll notice things such as looking for a post where the url ends with api/contextinfo which is part of the “dance” when posting to SharePoint. I decided it deserved its own method to keep the normal post method more clean and consistent.

fetch(url: string, options: FetchOptions): Promise<Response> {
    let response;

    if (options.method.toUpperCase() === "GET") {
        response = this.Get(url);
    else if (options.method.toUpperCase() === "POST" && url.toLowerCase().endsWith("_api/contextinfo")) {
        response = this.PostContextInfo();
    else {
        response = this.Post(url, options);

    return Promise.resolve(response);

Since I thought the simplest type of request to mock is was going to be an HTTP GET lets start there. Note I later learned POSTing an item is probably simpler to mock. Before I show the mock code I just wanted to step back and show the service code that is utilizing PnP to issue that get request. The code below is part of a DocumentService injected into a UI component. The method below, getAllDocs, looks EXACTLY as it would have if I had no mock data. It gets a list of items and then loops those items and maps them to internal data models used to bind to the UI. No mock anything here.

async getAllDocs(buildParent: boolean): Promise<BaseDocument[]> {

    let items = await pnp.sp.web.lists.getByTitle(this.listTitle).items
        .catch(e => { super.logPnpError(e); return false });

    if (this.documents == null) {
        this.documents = [];
        for (let item of items) {
    return this.documents;

When the above code calls pnp.sp.web.lists.getByTitle(“Documents”).items.get() it will go through the customfetchclient and while running locally realize it needs to pass responsibly to MockResponse and ultimately end up in the Get method below. As I’m building this method up, you’ll see that I inspect the url and when a call is going against the Documents library I grab a local copy of an array of items that has been mocked to look like data from that SharePoint list. I then have methods that may “reshape” that array based on any select parameters. For example if $select=ID came in, then that would be the only item property I return for each item in the array. The applyFilter will also attempt to filter the array values based on query params like $filter=Value eq ‘something’ and so on. The applyFilter is where much work still remains for me but I’ve included the start of the pattern in the code below.

private Get(urlString: string): Response {

    let url = parse(urlString, true, true);
    let body: string;
    let items: any[] = [];

    if (urlString.indexOf("getByTitle('Releases')") != -1) {
        items = ReleaseList.Items;
    else if (urlString.indexOf("getByTitle('Projects')") != -1) {
        items = ProjectList.Items;
    else if (urlString.indexOf("getByTitle('Documents')") != -1) {
        items = DocumentList.Items;

    // apply select, filter, top, etc...
    items = this.applyFilter(items, url.query.$filter);
    items = this.applySelect(items, url.query.$select);

    if (url.pathname.endsWith("/items")) {
        body = JSON.stringify(items);
    else if (url.pathname.endsWith(")")) {
        let index = url.pathname.lastIndexOf("(");
        let id = url.pathname.slice(index + 1, url.pathname.length - 1);

        let item = items.find(i => { return i.ID === +id });
        body = JSON.stringify(item);
    else {
        //not sure what might hit here yet

    return new Response(body, { status: 200 });

private applySelect(items: any[], select: string): any[] {
    let newItems: any[] = [];
    if (select != null && select.length > 0) {
        let keys = select.split(",");
        for (let item of items) {
            let newItem = {};
            for (let key of keys) {
                newItem[key] = item[key];
        return newItems;
    else {
        return items;

private applyFilter(items: any[], filter: string): any[] {
    let newItems: any[] = [];
    if (filter != null && filter.length > 0) {
        //assumes this is always 3 parts currently, will need refactoring for startswith etc.
        // (e.g. ZipLookup/Id eq "1")
        let filterParts = filter.split(" ");  
        let simpleFilter = this.createSimpleFilter(filterParts);

        for (let item of items) {
            let propertyValue = item;
            for(let property of{
                propertyValue = propertyValue[property];
            let filterValue: any;
            if(typeof(propertyValue) === "number") {
                filterValue = +simpleFilter.value;
            else {
                filterValue = simpleFilter.value;

            let match: boolean = false;
            switch(simpleFilter.operator.toLowerCase()) {
                case "eq":
                    if(propertyValue === filterValue) {
                        match = true;
            if(match) {
        return newItems;
    else {
        return items;

private createSimpleFilter(filterParts: string[]) : SimpleFilter {
    let simpleFilter = new SimpleFilter();
    if(filterParts.length == 3) {
        simpleFilter.operator = filterParts[1];
        simpleFilter.value = filterParts[2];

        if(filterParts[0].indexOf("/") != -1) {
            let lookupParts = filterParts[0].split("/");
            for(let part of lookupParts){
        else {

    return simpleFilter;

There really isn’t much to the arrays that mock the list items. The are just simple classes I create for each list with a static Items property and then a collection of items. Note that I do use imports to other arrays as a way for me to bind lookups.

export class DocumentList {
    static Items: any[] = [
            ID: 1,
            ProjectLookup: ProjectList.Items[0],
            DocumentType: "BR",
            Author: "George",
            Version: 1.0,
            StatusLookup: StatusList.Items[2],
            CreatedDate: "6/10/2017",
            UpdatedDate: "6/11/2017",
            BaselinedDate: "6/12/2017"

If you’ve made it this far in the post I’m sure you are wondering about HTTP POST. In some respects, this is easier than the GET because a post is almost always for a single item and there aren’t as many other parameters to account for (filter, select, top, etc…). In this case we just need to take a body and either create an item or update an existing item. Again for completeness my ReleaseService might have a save method like below that is called from the UI component.

async save(release: Release) {
    super.logInfo(`save: [id:${}] `);

    if ( != null && !== 0) {
        await pnp.sp.web.lists.getByTitle(this.listTitle).items
    else {
        await pnp.sp.web.lists.getByTitle(this.listTitle).items

    this.releases = null;

In the MockResponse class the internal Post method handler will first do similar work as the GET just to figure out which list the user is going against and get the appropriate list of mock items to work with. Depending on the url format we can determine if this is new /items or an update /items(1) and add to the array of items or update an existing one.

    let url = parse(urlString, true, true);
    let body: string;
    let items: any[] = [];

    if (urlString.indexOf("getByTitle('Releases')") != -1) {
        items = ReleaseList.Items;
    else if (urlString.indexOf("getByTitle('Projects')") != -1) {
        items = ProjectList.Items;
    else if (urlString.indexOf("getByTitle('Documents')") != -1) {
        items = DocumentList.Items;
    if (url.pathname.endsWith("/items")) {
        let item: any = {};
        item["ID"] = items.length + 1;
        let requestBody = JSON.parse(options.body);
            (e) => item[e] = requestBody[e]


        let result: ItemAddResult = {
            item: item,
            data: {}

        body = JSON.stringify(result);
    else if (url.pathname.endsWith(")")) {
        let index = url.pathname.lastIndexOf("(");
        let id = url.pathname.slice(index + 1, url.pathname.length - 1);

        let item = items.find(i => { return i.ID === +id });
        let requestBody = JSON.parse(options.body);
            (e) => item[e] = requestBody[e]

        let result: ItemUpdateResult = {
            item: item,
            data: { "odata.etag": "" }

        body = JSON.stringify(result);
    else {
        //not sure what might hit here yet

    return new Response(body, { status: 200 });

I hope the code, patterns and approach I’ve began helps someone else as they explore options for mocking SharePoint list data. I’m still a few weeks out from actually starting the project where I plan to use this approach and I’m sure when things GET REAL I will have modifications and refactoring driven by more and more data and GET/POST scenarios. I’ll try to update this post with those lessons and look forward to any thoughts and recommendations others have based on this or other approaches for mocking SharePoint list data.

read more
Bo GeorgeAutomate Testing SharePoint Lists with PnP, Angular 2.0 and TypeScript

Managed Metadata 101: Taxonomy and Tagging in SharePoint

Danny serves as Vice President of Business Development at ThreeWill. His primary responsibilities are to make sure that we are building partnerships with the right clients and getting out the message about how we can help clients.

Join our Partner WAND for a webinar on Aug 10, 2017 at 11:00 AM Pacific/2:00 PM Eastern

Register now!

Taxonomy and managed metadata are the foundation of content organization and search in SharePoint. The newly released modern document library experience in SharePoint Online and SharePoint 2016 greatly enhance the ability for users to leverage taxonomy and metadata. Simply put, managed metadata for SharePoint is here to stay.

In this hour long session, you will learn about managing taxonomies in the SharePoint Term Store, how to set up managed metadata columns in your libraries, and how tagging and searching can be more effective with managed metadata and taxonomy. This webinar is relevant for SharePoint 2010, 2013, 2016, and SharePoint Online.

After reviewing the fundamentals of the managed metadata capabilities in SharePoint, we’ll show some ways that you can accelerate your managed metadata project with pre-defined industry vertical and business functional taxonomies from the WAND Taxonomy Library Portal.

You should attend this webinar if:

  • You want to learn the ins and outs of the SharePoint Term Store
  • You are a corporate librarian or information architect working on a SharePoint project
  • You are working on creating a corporate taxonomy or a managed metadata project in SharePoint
  • You are struggling with the challenge of tagging documents with relevant metadata in SharePoint
  • You get complaints about difficulty searching content and documents in SharePoint

Presented by Mark Leher, WAND’s COO

After registering, you will receive a confirmation email containing information about joining the webinar.

View System Requirements

read more
Danny RyanManaged Metadata 101: Taxonomy and Tagging in SharePoint

Using SharePoint for Your Next Knowledge Base Project

Tommy serves as the President at ThreeWill. In this role, he works with his leadership team to hire the best people, find the right business opportunities, and ensure that ThreeWill delivers for our clients on projects.

Danny Ryan:Hello and welcome to the ThreeWill podcast. This is your host Danny Ryan and I’m here with Tommy Ryan. How are you doing Tommy?


Tommy Ryan:Good. What happened to the co-host thing?


Danny Ryan:I’m here with co-host Tommy Ryan. How are you doing Tommy?


Tommy Ryan:I’m doing well.


Danny Ryan:I can make a quick modification, that’s fine. How are you doing co-host?


Tommy Ryan:Doing fine co-host.


Danny Ryan:How are you feeling co-host?


Tommy Ryan:Just wonderful.


Danny Ryan:Good.


Tommy Ryan:All that thunder and rain and lightning, I’m all refreshed.


Danny Ryan:I guess all your grass is turning green now and your plants are starting to wake up.


Tommy Ryan:Yeah, it’s looking. Yeah, the garden’s actually getting a good start.


Danny Ryan:Awesome. Yeah, we’ve got a nice little dogwood tree in our backyard that’s waking up. It’s been fun to watch it start to bloom.


Tommy Ryan:Did you lose all the flowers on it in the rain?


Danny Ryan:Not yet, no. No, no. No, it looks-


Tommy Ryan:Okay, we did.


Danny Ryan:You did, really?


Tommy Ryan:Yeah, ours bloomed a couple weeks back.


Danny Ryan:It’s just starting to bloom so I guess I’m a little bit further north than you I guess. I don’t know what..


Tommy Ryan:Garden talk with ThreeWill.


Danny Ryan:Garden talk, here you go. You can probably talk for the next hours.


Tommy Ryan:Yeah, that’d be a couple hours long.


Danny Ryan:Yeah, okay. Today’s subject is using SharePoint as a knowledge base. I wanted to talk to you about some recent trends that you’ve been seeing with customers using SharePoint as knowledge base. I think this has been around for a long time as far using SharePoint as a repository for information inside of your organization. I guess what you’re seeing more recently is, how can we … Now this internal or external facing knowledge bases? Let’s start off with that.


Tommy Ryan:When you look at ThreeWill, in a sense as a portal it’s a knowledge base by default. It’s where you’re storing content and records and you want to go back and retrieve it. It’s a place to share things. That in a sense I think is a knowledge repository. Then as a organization you have certain lines of business and areas of specialization, in some organizations they have call centers, and so a knowledge base is a function of a call center that they need to answer questions for people that call in, and a way to way to have knowledge engineers collect the information needed to share with others or to be discovered by their call center representatives.


That can be an ‘internal’, quote, knowledge base. It’s customer facing but someone is aiding them on their behalf to get to that knowledge. Then you can take that knowledge base and make it self serve to your customers, making sure you have the right security and the right ease of use to make your customers happy when they come to look for that knowledge. You see that in different forms. You see it in documentation, in articles. You see it in forums or discussion groups. There’s different ways to collect and share knowledge and make that accessible to your end user.


Danny Ryan:What if you found has been the primary reason why people are thinking of SharePoint for doing this? Is it the built-in capabilities? Is it how you can extend it? What sort of things are people coming up with as far as why they’re using SharePoint?


Tommy Ryan:When someone goes to think about a knowledge base there are products specifically for that, that you have in a sense adopt, change your process to adapt to what that tool has to offer. The thing that we’ve always found with SharePoint and why we’ve picked it as a platform for us is it’s an extendable platform and allows you to do things, soften the edges of the solution. SharePoint gives you a great running headstart for a lot of the things that you need to care about as it relates to a knowledge base.


You need to have content management, kind of web content management or in document content management. Of course that’s a very, very strong area for SharePoint, document management through versioning and records management, and being able to publish and unpublish content and be able to control the flow of when content goes from ideation to revision to finale publicizing that information. Those are two very core areas, content management for web and document content. Then workflow is definitely an aspect that SharePoint has a lot going for it versus other tools that might be very limited in terms of what you could do with workflow.


Another very, very key area, search. What we found is a very strong aspect of bringing together a platform that has both search and content management, not a lot of those platforms are strong in both and SharePoint has a lot going for it as it relates to now that you’ve authored all this content when someone is answering a call and wants to get to that knowledge using search and search refiners and all the things that you can do to enhance that search experience.


Danny Ryan:I just published a blog post from Bo on managed metadata, that probably feeds into this as well.


Tommy Ryan:Yeah, that’s definitely a way to tune your search results, is through managed metadata, so you do have those refiners on the left. For those that don’t know what refiners are, think of Amazon when you start filtering down and selecting different attributes. Most of the commerce sites that you go to you see, is it men’s or women’s clothing? Is it a shirt, jacket or pants? Those type of attributes that help you drill down to a subset of information where you’re going to find what you’re looking for.


Danny Ryan:When prepping for this you were saying something about translation services, that you can also use that as part of SharePoint as well


Tommy Ryan:Yeah, a real cool aspect of SharePoint is the ability to send out content for translation and for that to be created for you and automated for you. That’s an exciting aspect. If you had to support Spanish as a language in your call center, you can submit that to Bing translation services and it comes back and is publicized in a Spanish version of the site.


Danny Ryan:Now, since this is customer facing, has branding come up? Where’s branding in all of this? Is it not really an emphasis, it’s just trying to get the information? Any branding topics come up?


Tommy Ryan:Yeah. I think it is. Branded in general, it’s not knowledge base specific, it’s more of, “I’ve got a company brand that I want to emphasize.” We’re seeing it where people put a very strong branding effort for internal because it’s part of their culture and their brand. Then also when it’s external facing you want to pay attention to those details. That definitely comes into play when we’re looking at knowledge basis to put the appropriate level of branding.


Danny Ryan:Were there any discussions on whether visitors might be using a mobile device? Any sort of designs around making sure it works well on mobile?


Tommy Ryan:Yeah, and that’s similar to branding, where any time we do something we talk about the mobile experience and what the customer wants to have as it relates to different form factors accessing the site. We have, we our knowledge bases, made them mobile responsive. You just have to pay attention to what functionality within the solution is appropriate for mobile and how do you resize and snap into a different form factor when someone accesses it from a phone or a tablet.


Danny Ryan:Are people doing it on SharePoint online or are they doing it on SharePoint on prem? Does it matter?


Tommy Ryan:We’re seeing it more on SharePoint on prem. Especially if it becomes mission critical and you want to control the response time, so you can scale your farm as you need it. Office 365, it’s viable and we see it. Probably haven’t seen it as much at large scale and we’ve looked at Azure too as another option for that if you want to, quote, “have it in the cloud,” but have control over the scale of the operation. Because we look at designing these knowledge base solutions to have a very heavy search component, and if you do have a lot of load from incoming calls you want to make sure search is not a bottleneck and so you dedicate some of the front end servers to the search query processing.


Danny Ryan:Excellent, excellent. Anything else you’ve been noticing at all when people are looking at using SharePoint as a knowledge base?


Tommy Ryan:I think, and you talked about it before, the managed metadata, having an information architect as part of the team to drive out the taxonomy of your organization, understanding how do you name things and what are synonyms for those things that you name so no matter what someone searches for they’re going to have a fast path to finding that knowledge because you categorized it well. That managed metadata is a very key exercise. It’s going to influence your search experience, probably even your navigation experience to be able to drive down into the details. Another aspect that we didn’t mention, but when you’re thinking about knowledge bases, if it’s a internal knowledge base and you don’t have any SLAs on a response to getting to the answer in that knowledge base, then you might not care about how fast you get there.


If you can get there eventually you’re okay, but in a call center you’re really caring about that response time. So we’ve looked at different ways to get to knowledge, using things like decision trees to allow you to look at it as a script that say someone in the call center would have to ask the right questions to get to the right answer, but putting that in a visual flow where instead of you opening up a Word document and looking through the script we have visual big buttons that drive you through that flow and give you a breadcrumb at the top to say hop back somewhere in that flow if you went down the wrong path. We’re finding that’s a great way to enhance the user experience and increase the performance of your call center.


Danny Ryan:Excellent. Since we’re talking about customer service and self service, this reminds me of a lot of the recent conversations that we’ve been having about Net Promoter Score. As far as looking at doing this project is that one of the underlying key metrics that you’re trying to address is Net Promoter Score?


Tommy Ryan:Yeah. We’re on a really big knowledge base project today, and that is the driver. It’s a very poor NPS score that they’ve got a goal to raise that, and this is instrumental to that initiative to raise that NPS score.


Danny Ryan:Excellent. Anything else before we wrap up?


Tommy Ryan:I think that’s good. There’s more to talk about. Would love to talk to you about knowledge bases and how that can help your organization and what you can leverage out of the box. We think the beauty of SharePoint, there’s the ability to configure a lot of what you need to do as part of a knowledge base solution, and you’ve got control of scaling and to think about the power that you have in the search experience and the content management experience and the workflow and the managed metadata. There’s so many things that SharePoint has going for it to fit as a knowledge base solution.


Danny Ryan:Absolutely. Yeah, if you’re looking to do this please drop by our website,, contact us page is a great place to get started. Would love to continue this conversation with you. Thank you for doing this Tom.


Tommy Ryan:Sure thing.


Danny Ryan:Nice socks, are those the …


Tommy Ryan:Look at that.


Danny Ryan:Very nice, very nice. Thank you so much everyone for taking the time to listen today. Have a wonderful day. Take care, bye bye.


Tommy Ryan:Bye bye.


read more
Tommy RyanUsing SharePoint for Your Next Knowledge Base Project

Large and Complex SharePoint Migrations Webinar

Kirk Liemohn is a Principal Software Engineer at ThreeWill. He has over 20 years of software development experience with most of that time spent in software consulting.

Danny:Danny Ryan, I’m the Co-Founder and VP of Business Development for ThreeWill and I will host this and I’m not hosting it quite well. Hopefully it’ll go a little smoother from here. I’ve got Kirk Liemohn here with me, Kirk is a Principal Software Engineer, a Migrations Practice Lead. Thanks for joining me, Kirk.




Danny:Awesome. So we’ll go ahead and jump right in since we want to … In this discussion, if you’ve got some questions that you’d like to ask please ask those questions through the … GoToWebinar interface. I see that a lot of people have figured that out so far.


We are covering primarily a white paper that was produced by Kirk. In fact it was so large that we’re calling it an E-book, it’s about 26 pages and it covers large and complex SharePoint migrations and some of the things that we’ve learned through the years. With that you can download that again through the … GoToWebinar interface, there’s a PDF that’s in there and feel free to download that. So let’s jump right in. … Let’s jump in for the second time, how about that?




Danny:That first thing that you go through in the white paper is a discussion about whether your organization is prepared for the migration. Tell me more about that.


Kirk:One of the main things there, obviously, is has your migration done this before? Has it done a migration before? Maybe you’re going from 2013 to 2016, those were the SharePoints this time but previously you’ve done migration from SharePoint 2010 to SharePoint 2013. If that’s the case, then you’ve got a lot of experience to draw upon and you can take what you did well before and use that. Those things that you didn’t do so well, you can try to avoid the same mistakes.


Maybe instead, however, you’re going from SharePoint 2013 to SharePoint online and you’ve probably never done that before because you don’t usually migrate there twice. Although maybe different farms you can do that with. So there are some different challenges there, you just need to realize that and then realize that, “Yes, we got some experience with migration but there’s some aspect that we don’t know as well.”


Other aspects are, do you have skilled resources for the migration? This could be anyone from project managers, tier 2 support type thing, developers or people to help manage the migration, IT personnel, communications, those types of things are important to have a successful migration. We’ll get into some of those a little bit more.


And then I think it’s really important to understand, do you have the time to do a migration? Do you have a reasonable deadline as to when this has to happen? As we have seen before, especially with our Jive to SharePoint migrations, this can … Sometimes our clients come in and want something done in two months and that’s just not a very reasonable timeline a lot of times. For a very large and complex migration, we probably want it to be a year or more out that you’re going to need this thing to be done.


And then finally I would say senior C-level type or senior executives, you need someone on there that’s an advocate for this project, the migration project. You need the CIO, CTO, someone like that that can say, “Yeah, we need to make this happen here. Why we need to make this happen.”, and work with that individual to give them an understanding of what the process is going to be like. What’s the end user experience gonna be like? Because you’re going to be moving people’s cheese, and it’s gonna potentially cause some people problems and you want everyone to understand this. You want to communicate it well, give the communications certainly a bit, but you also want some sponsor that can back you on this, and can understand upfront that there’s going to be challenges with migrations.


Danny:Now sponsors are usually somebody within the IT department?


Kirk:I could be. I guess it doesn’t have be but it typically is.


Danny:Okay. Then usually with these, we’re sort of looking at your own organization and a lot of these, for the large and complex migrations, really there’s a number of people who are involved. Your organization, the sponsor, the things that … the capabilities and also the amount of time that you can put towards the migration but then you’re also working with third party folks maybe … We’ll talk later on about off-shore resources and outside consulting firms. It’s almost like you’re putting together a larger team to go after this as well.


Kirk:Yes, support personnel, everything.


Danny:Let’s jump into number two. Should you automate?


Kirk:The first part of this is … Clearly for anything but a super simple migration you’re going to want to use a tool out there and that’s sort of a form of automation. You’re gonna want to find one of the third party tools to help you and that’s important in of itself. Then, do you want to automate on top of that tool? By that I mean, if you look at how a lot of these tool work, they let you go in with an interface and say, “Okay, I want to move this folder from my source environment to my target environment, or this library, this site or site collection”. They help you through that process, but a lot of times there’s a lot of configuration options. Like, “Okay I’m moving the site collection. How many versions of your documents and list items do you want to maintain as you’re moving it over.” You can configure that with a lot of these tools.


Well that’s only one piece. There’s dozens of knobs to turn with these more advanced tools, and you’re going to probably want some consistency.


In addition to that, if you’re moving a lot site collections, you may want to automate the process of batching these up and moving them over time. So maybe your doing 50 to 100 site collections a day, and maybe you want to run them in off hours based on the timezone of that site collection. Then maybe at the end of when it runs you want to send some e-mails, before it runs maybe you want to put a banner on the site to say it’s being migrated. There are lots of things you can do around that if you do the automation.


Then, of course, you can watch it from a monitoring stand point and understand. How many do we have active right now? Are we having problems anywhere? Do we have a capacity to do this? Really a lot of this depends on your method of migration. SharePoint, as many people know, … There’s things like site collection backup restore, database attach migrations, and then if you’re going to SharePoint Online you can’t do either of those. That one you have to use basically a tool that’s going to use CSOM or the Azure upload API, along with CSOM. There’s a lot of moving pieces, and you can’t do 1,000 site collections at once. It needs to be managed from a batching stand point.


Danny:There are a lot of tools that are out there. I know we’ve even done evaluations for clients just to see what was the best one for them. I know through the years we’ve, just because of our clients preferences, done a lot of things with Metalogix where we end up building on top of their tools, automating the tool, which has been interesting to see.


Kirk:Some tools don’t allow you to automate it and I think some have gotten better over the years. Metalogix is definitely one that you can’t automate it so they’ve got a relatively easy way to say, “Okay, give me the PowerShell script for copying this site collection over from one environment to another.” Then you can take that a layer in doing that on any site collection. Maybe you can find out when it’s done and do some other tweaks if you need to. If you’re automating you can overcome any deficiencies in the tool, or any custom things you want to do before a site collection is moved, or after any part of the migration.


Danny:We’ve got some folks from CASAHL on the line as well and how we use their tools to inventory things.


Kirk:To my knowledge that’s a lot of what they do is inventory. They do a very detailed inventory of what you’ve got out there. SharePoint doesn’t do a great job of telling you what’s in SharePoint. If you want to know things like, “Well how many farm solutions do I have out there?”, or “How many sandbox solutions do I have?” Maybe you’re moving to SharePoint Online where you can’t really do that anymore. What about running workflows? You can’t migrate running workflows to SharePoint Online, for example. How many are running? What about other things like, “The length of URL is too long.”, maybe it records some things like that, so lot’s of things you can inventory.


Danny:Right. This one I know, within the e-book is a long one. This is one of the longer ones. Since I helped format it a little bit, this was a longer one which was; break the process in to stages. We have lots of conversations around here about process and fun topics like that. What does this mean for a migration? Talk me through this.


Kirk:Sure. So we came up with … Obviously you have to manage this somehow, so you want to break it up into parts that you can think about a focus on. We broke it into four primary stages; Assess, Plan, Verify and Execute.


The Assess stage is the first one. That’s the one where we’re going to try and understand what it is you want to get done. We want to know what your goals are. We want to understand what the scope is. Are you moving two farms? One farm? How big is the farm? What site collections are not? What version of SharePoint are you on? We want to understand a resource plan. Come up with a schedule. Really get the lay of the land, initial communication plan, lots of things.


The next one after you do the assessment is the planning stage. That is the big one, so we even break this one down further into four more steps. Instead of planning we break it down into; Inventory, Map, Streamline and Communicate.


Inventory is what you talked about with CASAHL tool. Microsoft has a tool out there, some of the migration tool vendors have a tool as well. We even have one, our ledger tool.


Danny:Everybody’s doing it.


Kirk:Just to be the cool kid on the block.


Inventory is to understand what you’ve got and what you want to move. You want to take stock in what’s out there. How big is each site collection, if you’re moving site collections. You want to understand, is it business critical? Is it not? What about your OneDrive or user base data. Those types of things.


After inventory you want to map it. It could be a simple mapping exercise where you just say, “Well, we’re moving things from point A to point B. It’s a lift and shift. We’re keeping the same URLs except for maybe the beginning part or maybe we are keeping the beginning part the same.”, so same managed path, if you will, same URLs for the site collection, or are you going to do some reorganization a long the way. You could move a lot of site collections into the same site collection, or vice versa. As a simple example. That’s the mapping exercise.


The streamline exercise is really after you start to understand this stuff, you want to decide, are there ways we can automate this or make this better? This might be the time that you might define proof concepts that you need to get done, in terms of, let’s test out the tool in this way, or how are we going to manage this batching of moving all of this content over?


Then finally after streamline in the planning sub phase, if you will, is communication, and this one comes up multiple times in this white paper or E-book. This is just one of those times that you’ve got to communicate to others, what the plan is, what the customer requirements might be. So you might have farm solutions. You might have to deal with those. Once you’re done with this planning phase you can update your migration charter, basically your scope as to what you’re going to do and what you communicate to the team members as to what we’re doing.


Big breath.


After that phase we’ve got the verify phase, and that’s where we’re really dig in and say, “Alright, let’s make sure we can actually do this. Let’s take a subset of things.” This is where you might do proof concepts on the tool, do some tests on it, make sure that it’s hitting your primary business use cases that you have out there, that you know of maybe from your inventory. You’ve got to do pilots. So after you’ve gone through some of those, maybe you’re going to automate in some way, you’ll want to go ahead and set that automation up, code for it, prepare for it. Then at some point you can do pilots, and we’ll get into pilots some more, but that would be part of this verify stage.


Then finally, after that, is doing the real work, the execute stage. Ideally in the verify stage, you’ve done a pilot of enough of your process so that there’s not many surprises, but there’s bound to be surprises when you’re executing. The execute is where you’re going to do things over and over and over again if it’s a large migration.


Danny:A lot of these, it really doesn’t matter what you call them, you just can’t skip some [crosstalk 00:14:56] Call it your process, call it whatever you may, I think this is all designed around reducing risk. Looking at, how do we pull off a successful migration? Well, these are the things that we’ve noticed have to happen in order for us to reduce the most amount of risk-




Danny:for it to occur successfully.


Kirk:Yes exactly.






Number four. Drum roll please. Communication is … We talk about communication, it seems like that’s the central theme with you, right? I guess you can migrate to the best of your ability, but if you mess up the communication then it’s not a successful project.


Kirk:Right. We’ve seen before where … We need to communicate not only … There’s lots of people to talk to right, but if you don’t communicate to your end users and your site owners you’re gonna have some problems. They’re gonna start seeing things are happening underneath them and they’re gonna be complaining, and some of those people are gonna know the CEO. So you just need to communicate early, and well. We’ve got lots of way to do that.


We’ve got a few different documents that we think are useful through this process. One is a policy document and this will define what your policies are with the migrations. As an example if you’re moving to SharePoint Online, you’ll probably have a policy that says, “We are not going to move migrating workflows, SharePoint workflows.” That’s because you can’t do that with SharePoint Online. That would be a good policy to have, but people need to understand that. What does that mean? How do they prepare for that. You’ll probably want a runbook or a checklist for them to go through before the migration so they’re prepared for that.


There can be other policies of things you support and things you don’t support as part of the migration, but it’s important to understand what that is, and that takes time to understand that. I talked before about time. To come up with this policy document and then communicate it out takes some time, and I think it’s an important piece of the migration.


Another one is a runbook that I just mentioned. So this would be maybe a checklist that site owners have to go through before their site is migrated, or it could even be users but typically would be site owners that they do before and after a migration of a site. This may time, for example if you are going to SharePoint Online and you’ve got farm solutions, well those farm solutions aren’t going to go over. How are you going to deal with that? Are you, as the IT organization that’s running the migration, going to go ahead and, as a service, re-architect those farm solutions for them? If there’s a lot of them, probably not. You’re gonna make the business own that. Each business unit that has farm solutions, now they’ve got to come up with a way to get that over on their own. You’ve got to work through that process, and the runbook might have that as one of the checklist items.




Kirk:A couple of the documents that we have, that we’ve discussed as a self-help document, which is for users. Maybe you’ve noticed through your testing phases and pilot phases that there’s certain places where users can get confused. You’re moving from one environment to another, from one version of SharePoint to another, things look differently in SharePoint. Site actions menu is on a different side from 2010 and 2013. In SharePoint Online you’ve got the new modern views and modern UI that looks different. So maybe you’re self help might help users find that stuff and make it a little bit less jarring as they go from one environment to another.


Then finally another document that we’ve talked about is a knowledge base and this would be more for your level one or level two support to work through if there are migration issues. An example of this might be, when you’re migrating master pages and they don’t migrate well for one reason or another. There might be some ways that some technical individuals can help out and they might want to have some guides through the document.


That’s only part of the communication. There’s more to it than that. In the white paper, we show a timeline as how some of this might work, but when you’re doing the migration of people’s content, you might want to e-mail out the site owners, or people who use the site and say, “Hey, you’re going to be migrated in two weeks, and here’s the schedule.”, or you might want to send out some communications earlier than that and let the site owners sign up as to when they’re going to be migrated or give them some leeway from a timing standpoint. A lot of times there’s some aspects of your business that have critical periods within the year. Maybe it’s around a holiday, or something like that. You just have to give them some leeway so that you’re not migrating them at the most important time of their year. Maybe it’s tax season, or something like that. You can communicate via e-mail, you can communicate via banners on the site-




Kirk:just lots of different ways, and you can automate some of that obviously if you want to.


All right well we’ve talked about pilot already-


Danny:You don’t usually say “Always”. Typically you’ll say “It depends”.


Kirk:Well it depends if you’re doing a larger complex migration.


Danny:If you’re doing a large … well I think we went into this … and it is large and complex migration so-


Kirk:-but the answer is you do one, and in fact, you might want to do two.


The pilot is critical. I think what’s important about a pilot, and important for me to communicate right now, is a pilot is not necessarily just testing, “Does the tool that we’re using work the way we want it to for these 20 site collections, let’s say.” That’s good, you want to test that out and you want to pick a decent number of pilot site collections that you can use to move over and migrate and see how it goes, but you don’t want to just test the mechanics of the tool. You want to test the mechanics of your process. Do you have a support process that’s ready to handle this? Do you have a ticketing process that’s ready to handle this? Can you handle issue remediation? What do you do when an issue comes up? How is it handled? How are the communications working during … how’s it going to work during production? Well if you can test it during pilot you’re going to run through some of those things and you’re going to find out what’s working well, not working well and work through the kinks in the process.


Once you start your full on migration a lot of times people want to go fast, fast, fast, fast and if that’s the case you’re going to have a hard time catching up if you’re always trying to deal with these issues that were not tested during pilot.


Danny:What groups typically do the pilot. Is there any guidance there with who does the pilot?


Kirk:A lot of times you’ll see IT wanting to pick themselves as a guinea pig, which is fine, but you really need to work through representative parts of your company. It needs to be more than just IT. You just have to branch out to different departments, and, of course, you want to choose people, maybe a site owner, that can work with you through some of these issues.


For example, during the pilot process you may find out that, “Oh, that didn’t go well at all, we’re going to just trash what we just did and we’re going to do it again.” Ideally you want to work with individuals that will allow for that. Now when you’re done you really want it to be in production. I think that’s the ideal scenario, but you have to allow for a redo or a mull again of some sort in some of these cases, or it’s going to limp a long and you’re going to be like, “Okay, well we’ve got these five libraries moved over but we really had a problem with this one because of the way custom content types were set up.”,or something like that. We need some time to work through that. Please work on the old site for this library and the new site for this one, or something like that. You may decide that’s how you want to go and having pilot users and pilot site owners that can work with you, it’s important.


Danny:Number six. Have a plan for triage … There’s going to be issues? I guess we’re talking about large and complex.


Kirk:Yeah. If you’re doing certain things like a database attach, a lot of times that can go pretty simply, but if you’re doing a lot of one off movements or moving things with CSOM over to SharePoint Online then these tools are not perfect and there are certain things that it can’t do just right. They can report errors and you can you try and look at those errors and work those, and, of course, users can report errors as well. From a triage standpoint you want to be able to take in a different piece of information, and you want to have a plan for how you’re going to address them. What we’ve done in the past, is we’ve looked at something we call issue definitions, which is just a way of defining a type of issue that we think can occur. Maybe we found that out during pilots, or even some of our testing. It’s something that we know the tool doesn’t handle perfectly-




Kirk:or because of our process something just can’t happen perfectly.-




Kirk:Maybe some of those we’re able to automate and code around but some of them we can’t. If you can define some of those issue up front, then what we’ve done is we’ll actually automate the process of taking errors from the migration tool, plug them into these issue definitions and then we jumpstart the triage process so we know, “Okay, this needs to go straight to level two support, or level three support or we’re going to start managing the triage process and the remediation of the issues.”


There’s a feedback loop where these issue definitions, you can determine them a little bit, mostly in pilots and even throughout production. Then that feedback loop is, well maybe goes back to update our knowledge base or our self help or our policies. Maybe our policy manual we talked about earlier, needs to say “You know what we cannot handle this.” And we communicate that out.


Just realize that there’s a big feedback loop there.


Danny:I’m just pulling up as you’re talking here, just, sorry I’m just pulling up the e-book and noticed it had some nice diagrams just sort of talking through this a little bit as well.


Kirk:That kind of shows a little bit of a feedback loop where those issues go into an issue definition, then depending on what happens, you’re going to have some feedback to the site owners. Maybe you’ll do an update to self help or knowledge base.




So support process.


Kirk:Yea, so this is part of the triage right-




Kirk:You’re going to have, I think I already mentioned some of this, you’re going to have inputs from multiple sources. You’re going to have users are calling in with issues, site owners are going to be calling in with issues. Then the actually people running the migration or the tool itself that’s doing the migration, it’s going to find issues. All of that needs to come into your process and you need to have a clear defined path of how you’re going to handle those issues.


This gets back to when I talked about the pilot needing to test, not only the tool itself, but needing to test the overall process. If you can include your support process as part of the pilot you’re going to be well prepared to do the migration because … Just imagine on day one of a migration if you’re doing 100 site collections or 1,000 site collections, or whatever it is. Probably closer to 100. These issues are flooding in. You need to have a vetted process where you can deal with that, because there’s going to be new things coming up that you weren’t prepared for. You want to be prepared as you can.


Danny:I think as well with this one I thought you had some-


Kirk:There’s a sample diagram in there that shows-


Danny:A sample diagram-


Kirk:It actually says it’s a simplified diagram because even though there’s 20 or so blocks it can be a lot bigger in terms of what the process might look like on how you escalate to different levels of support, where the issue originated and what documentation gets updated in the end, if any.






At least that’s a starting point or-




Danny:an example of one for you.


Kirk:Yeah that came out of one of our migrations that we simplified it to generic sizes basically. It will be more complex than that but that might be similar to what you want.


Danny:Number 8.




Danny:Archive strategy.


Kirk:Right, so a lot of time’s you’ll hear … It’s easy to just go out there and say, “You know what, our goal is to move from SharePoint 2010 to SharePoint 2013, and let’s just move it.” That’s fine, especially if it’s on for him, maybe that’s more fine, but if you’re going to SharePoint Online it’s a little bit harder. Why move things that just you don’t need? There’s always things that can go away and I know that as part of governance a lot of corporations will try to do things where certain sites have policies where data gets deleted over time. I don’t know if I’ve ever seen that used well in the field, but it’s great if you can do that. There’s still bound to be site collections that you just don’t need anymore, or at least you don’t think you need. We talked about CASAHL tool, it’s going to tell you when the last time, and I think the Microsoft one might do this as well, when the last time a site collection was touched.




Kirk:You know if it hasn’t been touched in two years, or three years, well there’s a good chance you don’t need it anymore. By touched, maybe that means something was modified. Well, maybe people are reading the site and maybe they do need it. You want to understand what you want to keep and what you don’t and in the e-book I mention, “What is your criteria for archive or not.” Maybe it’s there’s no changes in the last two years or last six months or whatever it is, or maybe it’s based on size. If it’s really small maybe somebody created a team site and never really did anything with it, or created a blog site and they created one or two blogs. Is it really that important to keep that?


Understand what that criteria is and then come up with a process for archiving, and you also want to test your process for restoring. Maybe your archive process involves site collection back ups. You’ve got to come up with a way that tools have ways of archiving as well. Then you’ll want to test your restore process so that you feel comfortable and that your team that’s going to manage this going forward … They’ve got to be the ones that know how to do the restore. Someone says, “Oh, gosh we really did need ‘x’ document and that was over in this site, and we don’t have that anymore.” Someone can do the restore for them and get the document up.


Danny:I think up to this point we’ve talked a lot about SharePoint to SharePoint migrations. Funny when you were talking earlier about the inventory of what’s out there, one of the types of migrations we’ve been doing a lot of is the Jive to SharePoint migrations. That made me think that the trial version of the migrator tool doesn’t move inventory for you. It tells you what’s out there, so that sort of fits into the process that we use.


Kirk:Oh yeah.


Danny:Then you have the shallow pool and the deep pool which sort of tell you a little bit more, give you some more information about what’s in the environment. All these things pretty much applies to … Doesn’t really matter, it’s not exclusive to moving from SharePoint to SharePoint Online.


Kirk:I don’t think it has to be.[crosstalk 00:33:14] It’s a process and-




Kirk:it doesn’t have to be that specific to your technology.




Kirk:One other thing when it comes to archive, or one other thing to think about is, a lot of clients will say, “You know we want to move to SharePoint Online, so let’s migrate our 2013 SharePoint environment there, but you know what, we’ve got some critical farm solutions that are in these certain sites, and we just don’t want to undergo the effort to re-architect those solution to get them to work in SharePoint Online.” Maybe that’s a good decision for you. That decision may be that you keep them in your current SharePoint, maybe 2013 environment, and then the other sites go to SharePoint Online. I call that a hybrid option-




Kirk:Where you keep some of your existing farm working and you move most of it to the new environment. Then you let that hit end of life-


Danny:Yeah, hit the end of life-


Kirk:and then you can get rid of it that time.


Danny:Yeah, just wait for the next time in which you really need to do a refresh with that line of business and then the time in which you decommission it and move it over to SharePoint-


Kirk:That’s right.


Danny:That sounds sensible.


So, last one. We’re here.


Kirk:We made it. Even though..


Danny:I wanted you to change this to, “consider ThreeWell resources”, but you wanted to have, “consider off-shore resources”. Why is that such an important thing for you to point out at this point.


Kirk:Yeah. Well if it’s a big migration you’ve got a lot of moving parts and a lot of data going across, so some things are going to be happening over and over and over again. While you can automate a lot of it, there’s going to be a human factor for a lot of it as well. We have used off-shore in the past, and you can use off-shore to help out with various aspects. One might be, as you’re starting your project and you’re determining that hey we can automate some of this, they could help you maybe with some of that tooling. Another would be, certainly, the level two supports. Maybe you’ve got a help desk staff but when it comes to SharePoint expertise you only have a handful of people and they are not going to be able to take all of those level two calls that are coming in. An off-shore staff might be able to do that. You can get some SharePoint resources obviously, that know some of these finer things within SharePoint such as, I mentioned, MasterPage tweaks that might have to occur-




Kirk:for example.


That’s where they come in a fill those gaps.




Kirk:They can also help with the triage process so as issues are maybe being reported not only by users, but but by the tool itself, they can triage those issues and say, “You know what, oh, this isn’t an issue.”, or “Oh yeah this is something big, let’s dive in further and see if we can fix this.”




You did it.


Kirk:Well, I’ll mention one other thing around the off-shore is … I’m not saying you should use them, I’m saying you should consider using them-


Danny:Yeah. Okay-


Kirk:We’ve had success with them in the past for sure. You want to consider the timezone differences, and that can be a pro and a con. For example, obviously timezone differences can be rough, say they’re in India and that’s 10ish hours different from Eastern time in the U.S. but it’s kind of hard to talk to them much during the day. That can be a problem, but the other side of that coin is that if you’re running these migrations, they can be doing things off hours while you’re not doing them. So you can be more of a 24 hour team when you have your team spread across the globe, to an extent. Then of course, maybe you’re a global company and you’ve already got resources all over the place, but if you don’t then this might be a nice way to kind of help your IT organization manage the process.


Danny:Awesome. Awesome.


So we are about at 10 minutes left here. If folks have any questions that they want to ask in the GoToWebinar interface, feel free to do that, and we’ll look through those. I’ll give you guys a second to do that. If there are any questions again if you go into that handout section of that GoToWebinar, you can download the PDF for this, so feel free to download that and share it with your colleagues.


We’ll also, I think I mentioned this the first time and not the second, that we will be sending out a recorded version of this so you can share that as well. ThreeWill have a podcast and actually this will go up as well as a podcast. We’ll have to just clip out the first part of it, or have a very long intro music.


Kirk:Yeah. Yeah.


Danny:Intro music for 10 minutes, some nice elevator music for 10 minutes-




Danny:and then we’ll jump into it.


I don’t think I see anybody.


Kirk:Maybe we muted the questions.


Danny:I don’t think I muted questions. I hope not, I hope I haven’t muted questions.


Well, let’s do this. I guess if you had to have a conclusion to all of this, putting this together, what would be … Didn’t have time to listen to whole podcast, whole webinar, what would you say is a key thing to take away from this as far as preparing for a large and complex SharePoint migration.


Kirk:Be prepared is what I was about to say.


If you can, take a look as this paper and read through some of the sections and see what rings true for you, and plan ahead. We’ve said it several times. It’s probably the top three, might be … Plan ahead, do a pilot and communicate. There’s others in there, they’re all important, but those are ones that I think are really important, and not necessarily in that order, but you want to give yourself the time to make it happen. You want to vet the process out and the tool out and the whole thing. You need to communicate with, not only site owners but also end users and upper management, and make sure that everyone’s on board with what’s going on. There’s several ways to do that communications, several times you need to be doing that communication.


Danny:Purely selfish question here, but people pull us into these types of engagements why? Is it just because we’ve done them before and can keep them out of the things that get them into trouble with the migration?


Kirk:It’s not part of people’s business to be doing migrations, so they don’t really need to have that expertise for something they’re not doing that often. It’s smart, if it’s big enough, to try and get help. So you’re not going to run into all the issues we’ve run into before if you have our help. There will be issues, I can guarantee that. If it’s large and complex enough there’s going to be issues that we’re going to have to work through, because every migration is different, but there’s a lot of similarities to them.


Danny:So once everybody is on SharePoint Online, what happens to our migration questions?


Kirk:When you’re not ready for it.


Danny:Then we move over to our portals practice and then to add them you can switch over to that-


Kirk:That’s right-


Danny:That will be a … I’m not sure that date’s going to come anytime soon as far as everyone moving over to SharePoint Online.


Kirk:Yeah, and that is one interesting thing. This doesn’t have to apply just to SharePoint Online, but I think a lot of this is when you’re moving to SharePoint Online it becomes more complex, because the tooling has to do more work. Once you move to SharePoint Online, the promise is, you shouldn’t have to migrate again. There’s not another version of SharePoint to migrate to, Microsoft is handling all of that for you underneath the covers. At the same time, there will be features that come and go and be deprecated over time I would guess. I haven’t seen that happen yet on SharePoint Online. I can’t think of one, but there will be the next InfoPath, PowerApps, or something, maybe that will go away. I’m not saying it’s going to, but hopefully it automatically migrates into it’s next thing for you, but there will be some aspect that I’m sure is going, but it should be a lot less from a migration standpoint once you’re in SharePoint Online.




Well, thank you for taking the time to put this e-book together.




Danny:And getting your thoughts down on paper. I know it’s tough. I mean, you’ve been really busy lately, and doing a great job on projects. Just appreciate all the hard work that you’ve been doing with migrations. It’s awesome. It’s amazing to see how quickly all the stuff is coming together.


Kirk:Thanks. Well there are several people that helped out. I know on the title page or something, it mentions reviewers or contributors or something like that. Several people helped out and I appreciate their help.




I don’t see any questions. If not, I went ahead and put up … You’ve got my e-mail address up there, my phone number, feel free to drop me a line if you want to pick up on this subject and maybe go into something a little bit deeper that we didn’t cover with this. I can grab Kirk and we can set up a phone call. If there’s any other questions that you have.


Again, thank you. My apologies for about the first 10 minutes. I apologize about that, but thank you for hanging on and for listening. In a couple of days here you’ll see an e-mail from us that has a link to how to share this with others, so keep an eye out for that. Thanks again Kirk for your help with this.


Kirk:You’re welcome.


Danny:Thank you everybody for listening.


Have a great day and have a great weekend. Take care. Buh-bye.


read more
Kirk LiemohnLarge and Complex SharePoint Migrations Webinar

Another ThreeWill Client Wins Best Intranet of the Year

Danny serves as Vice President of Business Development at ThreeWill. His primary responsibilities are to make sure that we are building partnerships with the right clients and getting out the message about how we can help clients.

Last year ThreeWill client Cadwalader was one of the winners of the Best Intranets of 2016.  Another ThreeWill client, Goodwill, has won the same award for 2017.

The user-experience research firm Nielsen Norman Group announced the winners of the Intranet Design Award for 2017.    Among the winners for Best Intranet was ThreeWill’s client Goodwill (Press Release).  The winning intranets were chosen by expert review based on design and usability from an international field of submissions.

ThreeWill worked with Goodwill to design SharePoint dashboards for managing and reporting on sales, people, donations, square footage and other financial information.  ThreeWill also performed a health check on their SharePoint environment . They were having some issues with their hosting provider and asked us to take a look at their farm and make recommendations for stability.

ThreeWill was referred to Goodwill by another client, St. Francis Hospital, based on our experience and knowledge of SharePoint.

ThreeWill, a Microsoft Gold partner based out of Atlanta,  helps teams work together better by building solutions on SharePoint using an agile process.

Learn more about Goodwill – .

Read more details and purchase the report here –

Contact us today about building an award winning SharePoint initiative for your company.

read more
Danny RyanAnother ThreeWill Client Wins Best Intranet of the Year

Taking a Holistic View of FastTrack for SharePoint

Tommy serves as the President at ThreeWill. In this role, he works with his leadership team to hire the best people, find the right business opportunities, and ensure that ThreeWill delivers for our clients on projects.

Danny Ryan:Hello, and welcome to the ThreeWill podcast.


This is your host Danny Ryan speaking, and I have Tommy Ryan here with me. How’s it going, Tommy?


Tommy Ryan:It’s going well.


Danny Ryan:Yeah? You having a good week?


Tommy Ryan:It’s a busy week. A lot of on-the-road traveling within Atlanta, not outside of Georgia. It’s been a busy week.


Danny Ryan:Yeah, traffic was crazy yesterday. Wasn’t it? With the rain … It was yesterday or the day before.


Tommy Ryan:It was yesterday.


I was actually at a client location and we had to go to the basement, or the hallway in the middle of the building because of the tornado warning at two o’clock yesterday.


Danny Ryan:Let me see your socks. There you go.


Tommy Ryan:Here you go.


Danny Ryan:See, I’m getting a little crazier than you here.


Nice, blue. Some shades of blue and gray.


Tommy Ryan:Yeah, I like it.


Danny Ryan:Yeah, thank you. A little florescence again with me. Branching out a little bit.


Today what we wanted to talk about was taking a more holistic approach to FastTrack for SharePoint. I’m not going to say high level, I’m not going to say it.


Start us off with just, what is FastTrack for SharePoint and why are people looking at this now?


Tommy Ryan:FastTrack for SharePoint is a program to get people into Office 365 and it’s been around for migrating mailboxes into Office 365.


Just recently at the Ignite conference, they announced people being able to use Fast Track to move share point content to the cloud, [crosstalk 00:01:40].


Danny Ryan:Microsoft is going to help with doing the migration and, of course this is going to be for free, right?


Tommy Ryan:It is, it is. There’s maybe a couple caveats to that.


Danny Ryan:What’s the catch? It’s a good hook, free is always good, but … Give me some of the, “yeah it’s free, but”.


Tommy Ryan:I think Microsoft definitely wants to see continual adoption in the cloud. If people are getting their mailboxes up there, it’s going to be a richer experience if they get their share point content up there.


It’s a suite of applications that a lot of the services are giving you that ability to roll up different areas of Office 365 and a more comprehensive view.


We were talking about teams last week. If I use teams, I would like to have my file content available to me and my team. If you have that on [prem 00:02:46], that might be a challenge. It might not be feasible to use a tool like that.


I think it’s to the cloud and supporting that, so they’re anteing up by giving people the ability to cut down on the costs. When it’s free, I wouldn’t say it’s free … We can talk more about that. At the end of the day, it’s moving simplified content.


Whatever you have that’s “customized” or a little bit different than the standard flow of the migration process, you’re going to have to handle that out of band of that Fast Track migration.


Danny Ryan:So it’s moving file content over primarily? Is that what we’re looking at?


Tommy Ryan:Yeah. When they go through what’s included, they talk about what’s included at a site level, a list level, and an item level.


When they talk about sites, they say, we’re moving over the title, the logo, the theme … If it’s an out of the box theme. The standard navigation, your content types, site columns, pages, a limited member of web parts, permissions in sharing.


Some of the information that’s very basic, share point out of the box, that’s coming over with sites. Then list, it’s documents and items and views and content types and manage metadata. Then down at the item level, things like versions, up to five versions, and the permissions down to the item level.


Really good basic, if you set up share point and you did a basic team site and you ended up adding a couple items in a calendar and created some document structure and you really didn’t go further than that, then you’re going to be able to move a lot of that content over for free.


Danny Ryan:That’s great. There’s probably caps on the amount of content that Microsoft’s going to move over?


Tommy Ryan:Yeah, they cap it at 10 terabytes total. You get a half a gig per user. If you’re in the 10s of thousands of users, you’re starting to get into the terabytes of data.


Danny Ryan:Nice. Where do we fit into this? What do you see as the need occurring because of this? I look at this and say, okay this will get you part of the way there and could introduce some more pains involved with having your data … Having things in two different places.


What are you seeing … What’s the need that’s coming about because of this program?


Tommy Ryan:I think it’s that challenge that you face when you go into a migration and you start migrating and you get some of the content over into the newer version of share point, but you don’t quite get to the finish line and you have stuff left behind in your existing form.


That creates a disjointed experience for the user. It’s even worse when you’re talking about Office 365 where you don’t want to have just a couple of your sites over there and then people having to go to totally different locations and have a totally different user experience as they get content from on prem and in the cloud.


There’s going to be situations where people will leave stuff behind on purpose. It might be full trust code, and they don’t want to put the effort into porting that into a cloud-based model for the app that they built.


Some of those things will purposely be left behind, but you want to get as much of that content over. Also, at the end of the day, the remediation that will need to take place is not “covered” as part of this program. The remediation is up to the end user.


There is an assessment that will give you a sense of what that will be, but you’ve got to have a plan to address that so when that content gets over, you’re addressing things like running work flows, you’re addressing things like did I use custom list forms, did I have [infopath 00:07:30] forms.


It’s great if you move all the data over there, but if your user interface was in infopath form, you’re going to be in a bad place. You’re going to have to think about, well what do I do now that those infopath forms didn’t come over. Do I need some help with someone getting them over or do I need to go and create some light weight UI on top of those lists and share points?


Danny Ryan:Remediation is going and trouble shooting when there is issues? Or is it checking to see that all the content moved over? Is it a combination of those two?


Tommy Ryan:From my understanding, it’s things that have failed in the process of coming over. There’s going to be logs … At the end of the day, the customer is going to have to go through and figure out how do I handle something that didn’t migrate over 100 percent.


Danny Ryan:Okay, great.


What else would you have to share with somebody who’s trying to fill out what needs to occur when you’re using Fast Track?


Tommy Ryan:I think we’ve talked about migration in the past. One of the things that’s a key thing to think about and plan for and implement is a communication plan.


All the communication that occur when you’re moving someone’s cheese … I think that’s something that … Microsoft will give you some guidance on that, but it really is going to be up to the customer to make sure that there’s a solid communication plan, and just coordination around who gets involved when so you can have a successful migration.


What are site owners doing? What are their responsibilities pre and post-migration? How do they help with the remediation, making sure that people know when this is occurring and have a sense of what is their backup plan during that time of migration? How do they keep continuity of service of the sites that they use and share point?


Understanding which sites are mission critical. You have, maybe some white glove-type service around those sites so you’re not interrupting what’s making money for your company.


Danny Ryan:This Fast Track for share point is a limited time offer from Microsoft as well, correct?


Tommy Ryan:It is. It’s pretty fast timeline, maybe that’s why I call it Fast Track. Get on the track quickly, it’s going fast.


Danny Ryan:The train’s leaving.


Tommy Ryan:It’s actually ending the end of March, so you have to get started by then. For folks who are thinking about taking advantage of this, it’s something that you want to start getting in motion today.


Danny Ryan:I guess we work alongside with the Microsoft teams. They would contact Microsoft, and then we would be basically another third party that’s involved with this just to make sure that the overall effort is a success.


Tommy Ryan:Right, yeah. We get the account team involved and make sure they can get down the process to qualify and get on the list to be Fast Tracked.


Danny Ryan:I imagine this is for more complex environments and larger organizations are probably the people who would want to have this type of service?


Tommy Ryan:I think it’s a variety. I think you might find people, if they have a very simple environment, Fast Track is going to have a higher coverage of that migration.


The one’s that have more complicated environments … Yes, it’s important to probably put more effort into planning around it, for the more complex environments because of the nature of larger organizations that depend on certain functions within share point that you’re not interrupting their services.


If it’s a complicated environment, that migration time line might be extended with remediation and all the things you need to do to be successful with it.


I think both can take advantage of it, it’s just a matter of how much help you need along the way. The more complex it is, the more planning and assessment and implementation services you need to augment that Fast Track effort.


Danny Ryan:One of the things I like about helping folks out with migrations is it’s typically a one-time thing, and why go spend all the time trying to learn about migrations when you’re just doing it once?


It’s good for you to engage an outside organization to help you with it, because they’ve seen other environments, they’ve done it before … Why spend so much time learning lessons how to migrate when you’re just going to do it once.


Tommy Ryan:Right, yeah. I wish the program was around longer because we’re ramping up on this and we have a few customers that are down the path with this Fast Track program. We’re kind of having this podcast now to let people know that it’s out there and kind of that awareness.


We’re getting the experience around how they get the most out of a Fast Track offering.


Danny Ryan:I’m sure if it’s successful … I can not say successful this morning … If it’s a successful program, Microsoft may look at extending it, and that could always happen.


Tommy Ryan:Sure, right. There’s nothing like a sense of urgency though, so that’s probably a good plan to say it’s going away soon so jump on board.


Danny Ryan:It’s a good tactic, yes. Absolutely.


Thank you, Tommy, for taking the time to do this. I know you’re really busy and I appreciate you sharing some of the things that you’ve learned recently.


If you are one of those customers whose engaging Microsoft for Fast Track and you want someone else to help you more with a comprehensive plan and really reduce a lot of the risk involved with these project, please reach out to us.


Come to Click on contact us, and we’d love to talk to you more about helping out with this particular type of project.


Thank you so much for listening and have a wonderful day. Bye.


Tommy Ryan:Bye.


read more
Tommy RyanTaking a Holistic View of FastTrack for SharePoint

Common Challenges of SharePoint Adoption

Bruce is the Vice President of Delivery for ThreeWill. Bruce has over thirty-five years of extensive experience and proven success in IT Professional Services Management, COTS Product Development, Application Management and overall Financial Management.

Danny Ryan:Hello and welcome to the ThreeWill podcast. This is your host Danny Ryan and today I have Bruce Harple here with me. Bruce is the VP of Delivery. Welcome Bruce.


Bruce Harple:Hey, good morning Danny.


Danny Ryan:How are things going?


Bruce Harple:Going great. Glad to be here.


Danny Ryan:We’re on take two. My Mac blew up. Hopefully that will not happen again here but if you don’t mind we’re just going to go back through and redo … We’re going to relive the last ten minutes of our life.


Bruce Harple:Let’s do it. Let’s do it.


Danny Ryan:You’ve got a really important topic for us to cover which is about adoption and that really adoption is about having a successful intranet and a successful portal. Let’s start off with some of the common challenges that you see out there when we are talking with customers.


Bruce Harple:Yeah, that’s great Danny. We’ve been really doing a lot of portal work with our customers, a lot of intranet portal work. Also, we do extranets where customers who are wanting to reach out to either their clients or their vendors. There is a number of challenges that I see where customers talk about their portal failing or low adoption rate for their portal, so there’s a number of challenges that are a common thread across many of our customers.


Probably the number one challenge, number one problem is, I call it findability. Employees will come to the portal they’re looking for a document, a specific piece of content, and they can’t find it. If it’s not two or three clicks away they get frustrated and they give up. I do that when I’m on external sites and I’m looking for content or something and I can’t find it and I get frustrated and I throw my hands up and I give up as well.


Danny Ryan:It’s one of my biggest challenges. I know when I get up in the morning I can’t find my keys anywhere. Findability is a key problem.


Bruce Harple:It is a problem for sure. Some of that’s just where this kind of … We’re all mad-dashing against time and we’re all looking for quick answers, quick information, and if we can’t find it quickly we move on.


Danny Ryan:Yes.


Bruce Harple:Findability is key and number one. Another one is lack of ownership. It’s lack of an executive owner, a champion of the portal. Someone that can create the vision for the portal and ensure does it really support the needs of the business. Really just having content owners and providers. If your content isn’t current, it’s not fresh, and there’s people that aren’t taking ownership of that, then it becomes stale and irrelevant and people won’t use it. The ownership is another key issue and problem we see out there.


Danny Ryan:On the organizations who are doing this really well, they sort of see their intranets and extranets as a key way of communicating their brand, and also a key way of communicating what their culture is as well. You can really look at it a couple different ways, but for us, if you have … We’ve got a very open culture here and so there’s a lot of sharing on Yammer, there’s a lot of document sharing so it’s very open. I think it sort of speaks to, and it’s probably, depends on the organization, but you have different people who sort of own what the intranet and extranet is.


Bruce Harple:Yeah. A key point, Danny, is the ownership … You obviously want that executive ownership, but you also need to have that individual ownership so everybody in the organization has to take ownership. The whole organization owns the content in that portal and everybody’s got to be willing to contribute to it and obviously everybody wants to consume, but everybody’s got knowledge to share. Everybody’s got information that can value other parts of their organization, other parts of their teams.


Danny Ryan:Great. What’s the next challenge?


Bruce Harple:The next one, I kind of grouped these two things together, it’s relevance and reliability. That’s just saying that if you’re not constantly looking at your intranet, your portal, if the information and content out there is not current, if it’s not relevant to what I do, that content’s not helping me sell products and services to my customers, if it’s not helping me deliver products and services to my customers, it’s just not going to provide the same level of value to me. It’s got to be relevant to what I do, it’s got to be relevant to how I am delivering goods and services to my customers, and it’s got to be reliable. If content becomes old, stale, outdated, or that content is in 5 different places in your portal and that content’s different in all 5 of those places, how do you know which content, how do I know which document is the document that I should really rely on? That is a huge problem, that relevance and reliability, making sure that I trust what’s out there. If your organization doesn’t trust the content, they’re not going to go use it.


Danny Ryan:This is where it leads to, and I know I sometimes fall into this pattern, which is if you’re not sure then you start emailing the document around and then you really get out of whack because the latest version of the doc is in somebody’s email. You have to have the discipline to keep pointing people back to the intranet and saying this is the record of source. This is where you want to go to for the latest version.


Bruce Harple:Absolutely. Some of that kind of goes to my next challenge. It’s one thing that I think a lot of people overlook, and that’s just understanding your culture. How does your culture collaborate? How do they share information? How do they share knowledge? That’s huge in trying to understand. The intranet portals today have a lot of capabilities, but you’ve got to understand, of all those capabilities, which of those really met best to the culture of your company and what people are willing to do? Do you have a social culture? Are they the Twitter generation? Are they in the news feeds and activity feeds and things like that? Understanding your culture. Then if there’s things you want to move them towards, you’ve got to understand, how do I do that incrementally and take small steps towards changing that culture to be a more collaborative type culture?


Danny Ryan:Yeah, some of the larger companies, they’ve got multiple generations. They’ve got folks who are the older generation that might are used to picking up the phone to collaborate and then you’ve got … I think I’m part of the email generation. I don’t know if I want to call myself that, but everything’s done through email because I have a track of … I know when what was said and all that good stuff. I’ve got my outbox and ways of managing what commitments I’ve made and all that good stuff. Then you’ve got the activity feed driven younger kids, younger punks, that are so disrupt driven. Whatever’s the latest thing is the latest thing and that’s what I’m working on and it’s very interrupt driven.


Bruce Harple:Absolutely. In the next challenge I talk about, I call it governance. I’m always amazed at how many customers don’t have a governance plan in place around their portal. It really kind of governs how do we provision content into that portal, how do we use that portal to support our business? It’s key because the good news about a lot of these portals in today’s world is it’s very easy to add content and it’s easy to get to that wild, wild west mentality where there’s community sites, project sites, department sites set up all over the place and they’ve all got their own unique look, feel, brand, so instead of having a company look, feel, brand, and way to find information, it becomes very functionally departmentalized. Some of that freedom you want to allow, but you really need to have that governance plan in place because that’s going to drive that findability, that relevance and reliability aspect of this.


The last challenge and thing to talk about is, I call it inspection and adaption. One of the things that we see with portals and intranets today is that people build them, they get them populated, they get content out there and then there’s no ongoing care and feeding. There’s no kind of assessment of what kind of usage is occurring on the portal. I call that inspection and adaption.


Danny Ryan:That’s not like the Boston version of adoption. Is that adaption? Adaption?


Bruce Harple:I like that.


Danny Ryan:You are saying adaption?


Bruce Harple:I am saying adoption.


Danny Ryan:Adoption. Oh my goodness. You’re saying- okay, good.


Bruce Harple:I am saying adapt.


Danny Ryan:Go ahead. Sorry.


Bruce Harple:It’s really that kind of inspection, kind of inspecting the usage, inspecting value, assessing that value, and then adapting the content, adapting what’s out there to the business. Businesses are going to change too. The parties and the business are going to change and you need to keep that content, again, relevant, reliable, and findable. Those are the key challenges.


Danny Ryan:I’m going to be stuck on Sharepoint Adaption. Next, what do we have up next?


Bruce Harple:Really, next we just talk about how can people begin to think about addressing some of these challenges that we see.


Danny Ryan:Cool. How do they do that?


Bruce Harple:The first thing I’ve got is to really create a vision for your portal. It sounds simple but it’s really important, really critical, that you have that vision. I think of Steven Covey, precept of, kind of begin with the end in mind. If you don’t know where you’re going you can’t build a roadmap to get there. That vision really needs to convey the overall importance and value of the portal to the business. It should be supported with some specific objectives, and really some simple metrics that really assess the value of the portal to the business. A lot of people, it’s build it and they will come. That typically doesn’t work in the intranet business. You really need to make sure that everything you do through that portal is supporting the business somehow, is driving value to the business, is aligned with the business. That vision should support that and every time you do something to that portal you should really look at that vision stuck on your wall and say, “Am I supporting the vision? Is it supporting the end state of where I want to get to with my portal?”


Danny Ryan:Very nice.


Bruce Harple:That’s the first thing in addressing some of these challenges and the other is just overall ownership of the portal. There’s two parts to that. Some of it is having that executive level champion or owner of the portal. I think that’s key because you’re going to look to that person to make sure that that portal is aligned to the business like I talked about with the vision. Are we really aligning the usage of this portal, what we’re trying to accomplish with it, does that support the business? Is it meeting the needs of the business? This needs to be someone that’s really passionate about capturing and sharing the IP of your organization, and really passionate about driving that culture of collaboration. To me, that’s what a portal is all about. It’s about establishing that culture of collaboration, sharing knowledge, sharing experience, and just trying to look for how can we better sell and deliver to our customers?


Danny Ryan:I look at us and the reason why I think we do a lot of collaboration here at ThreeWill is because Tommy does a lot of collab- It’s from the top, and we do have some … We’ve got lots of clients that we end up finding out that the CEO is involved in this because of really, the communication aspect of this. If I’m going to get my organization to work together, we all have to be on the same page.


Bruce Harple:Yep. Absolutely. The other aspects of ownership are finding those content providers. With any portal there’s content providers, content consumers. Everybody wants to consume content. It’s always hard to get people to provide content. Some of that ties back to culture, which we’ll talk about later. Really, I think it is important at some level to identify those content providers, those content owners who could be responsible and held accountable for keeping content fresh and relevant.


Some of it too is driving down to individual ownership. Everybody wants to consume content but I think the organizations have to look for how do we motivate, how do we incent individuals to provide their content, their knowledge, their IP, as it relates to how we sell to our customers, how we deliver to our customers. You’ve got to figure out how to get that down to the individual level to where there’s individual ownership and people want to contribute and people feel good about doing that.


Danny Ryan:Great.


Bruce Harple:Kind of creating that vision, defining that ownership, those kind of … That applies across all those challenges.


Danny Ryan:What’s up next?


Bruce Harple:The next thing I’m going to talk about was that concept of findabilty. How do I enable people to quickly come in and find the content they’re looking for, find the information they’re looking for? There’s several pieces to that. One is just looking at what we call the information architecture. How do you structure all that content on your portal and how do you navigate that portal? There’s a couple of ways people come into portals to look for content. One is through navigation, through hitting links on pages, and the other is then through search. Those are the two key things is that site structure, that information architecture, and then search.


Then kind of associated with search, we think it’s really important that you develop that corporate taxonomy. A corporate taxonomy is just how you describe the things that are important to you. It’s tagging. It’s the metadata. How do I describe a document that I upload? How do I describe a video that I’m going to put on my portal? Then that metadata can be used in searching for that content, helping people find that content.


The overall search experience is so critical, because that’s the way that most people are going to find that content through that search bar. Like any website you go to, the first thing you’re looking for is that little magnifying glass and you’re going to key in what you think in your mind you’re looking for and that’s how you’re going to try to find that data.


Danny Ryan:We’ve been so trained by free text search, the Google search of just … Your expectation are so high of that I think on the public internet that you expect the same type of experience internally as well.


Bruce Harple:You absolutely should have the same experience. That Google search experience that you have on the external face on public websites, you should have that same experience inside your intranet portal.


Danny Ryan:Our solution is to put a Google device inside their organization, is that what we’re proposing here?


Bruce Harple:There’s several things, and I’m just going to rattle these things off. There’s a lot behind them, but the kind of things we look for establishing as part of your search experience or search verticals. How do I verticalize the content in search? I can search everything, I can search people, I can search for specific types of content, the other search refiners, so when the search result comes up, how can I refine that search by document type, by person, by date, by one of those metadata tags I talked about.


There’s different ways to present search results, so you might want to present a people search result in a way that if I mouse over that person their profile pops up.


Danny Ryan:In a little animated gif where they’re dancing or something like that?


Bruce Harple:A little animated gif where they’re dancing, whatever the avatar they have …


Danny Ryan:That’s the kind of intranet I want.


Bruce Harple:Or like for video, if I mouse over a video, I want to see the video playing for me. That’s important. Things like you expect with any kind of search engine is being able to influence search relevance, search suggestions, best bets. All those things are so important. I have this throughout this whole thing.


The other thing with search is that inspection and adaption. Somebody needs to be paying attention to how are people searching. With that you can begin to tune your search experience for your organization. You can’t just expect it to always work and always get better, you’ve got to manage that. You’ve got to expect what people are doing.


Danny Ryan:I actually track on our public site. I track what people are searching for. It gives me good input for, maybe I need to change something in the menu structure or something along those lines.


Bruce Harple:Yes, exactly.


Danny Ryan:Nice. What’s next?


Bruce Harple:Next, again, is relevance and reliability. I kind of group those two things together. Some of that is around reviewing metrics. It goes back to, again, I’m going to use those words, inspect and adapt. It’s really kind of looking at metrics, looking at Google analytics if you have that wired into your set which we recommend, looking at site analytics, search analytics, content aging. It’s all those things, so really it’s paying attention to what’s out there, how relevant it is, how current it is, and making those adjustments.


I think the other things is looking at ways to leverage site or page templates. People create new team sites, new community sites, new department sites. There’s a template that’s being followed so there’s a consistency, so as people navigate though that portal they’re not going to some team site, some project site, and try to figure out where content is stored and how it’s organized, you’ve got a consistent way you can apply a template to every different type of site you might provision inside a portal.


The other thing I kind of call out under relevance and reliability is, I’m saying conduct an annual portal retrospective. That means once a year you sit down and really kind of revisit your vision, revisit your objectives, because the business has changed. We do retrospectives on projects and we ask three questions, what should I continue doing, what should I start doing, and what should I stop doing? I think that applies to an intranet portal or an extranet portal. Once a year you should stop and ask those three questions about that portal, and again, fine tune what’s happening with that portal.


Danny Ryan:Nice. I like it. I like it. It’s almost when you were talking about that I was thinking, wouldn’t it be nice if we went around to our clients and did an annual …


Bruce Harple:We have a new service opportunity right there, Danny.


Danny Ryan:That’s just what we need is another service opportunity.


Bruce Harple:There you have it.


Danny Ryan:All right. Bring me to the finish line here. We got a couple more left, right?


Bruce Harple:Yeah, a couple more things. Let’s talk a little bit more about culture. Again, I just think it’s so critical to really understand your organizational culture, especially as it relates to collaboration, communication, and knowledge sharing. Ask yourself, do I have a social culture? Will they participate in activity feeds, discussions, news feeds. Are they-


Danny Ryan:Nude feeds?


Bruce Harple:News feeds. That would be a good one.


Danny Ryan:I’ll leave that one alone. Next? Go ahead, sorry.


Bruce Harple:Some people have fun with that.


Danny Ryan:I’m sure some people do. I’m sorry, go ahead.


Bruce Harple:An example is, there was a CEO who had a news feed of his own, like a blog post, and occasionally, just to see if people were paying attention and engaging with him, he would put a post out early in the morning and say, “First person that responds to my post …”


Danny Ryan:Gets a raise.


Bruce Harple:“… Gets a raise.” Exactly. They were just things like, “Have a gift card,” so “You’ve got a 50 dollar gift card, first person that responds to my post, I have a gift card sitting here for you.”


Danny Ryan:Engagement shoots fires up.


Bruce Harple:You can have fun with it as it relates to the social aspects of it. You just need to really think about how do people share documents? How do they collaborate around documents? Is that part of your business model? Really trying to see how their project teams interact and engage. How do they work together? Do they collaborate around a project set of some kind, a group of some kind? What are they willing to do, what are they willing to share?


I think so, you really have to end up mapping your culture to the capabilities of your portal, especially as it relates to social features, document sharing, document collaboration, notifications alerts, those kind of things. What will your culture accept? What fits that culture?


Danny Ryan:Then, bumbadumbum, everybody’s favorite subject …


Bruce Harple:Everybody’s favorite subject, governance.


Danny Ryan:Don’t you use that word around me. Don’t you point that word at me.


Bruce Harple:To me it’s simple. I just develop a governance plan. You need to have one. Identify ownership, assign accountability, and again, I got the inspect and adapt here with this one. It’s like, governance, you need to look at our governance plan once a year. You’ve got to pay attention to that because governance should drive that inspection and adaption. It should drive some accountability for how your portal is governed, how it’s kept current, kept relevant, et cetera.


Danny Ryan:If you don’t have one we have templates, right?


Bruce Harple:We have templates, absolutely. The last thing, Danny, is just to make it fun and engaging. It’s got to be engaging, it’s got to be fun, and you can do that if you’d like customers to have fun with their portals and make it fun, make it engaging. It doesn’t take a lot to do that. Then you have CEOs that make it fun and engaging too in the way that they engage with their team. That’s it.


Danny Ryan:That’s awesome. Thank you for taking the time to share this. I know this is really important. It’s just great you’re on so many different projects and working with so many new clients and prospects that I really appreciate your input on what you’re seeing out there, so thank you for taking the time to do this, Bruce.


Bruce Harple:Absolutely. We have a lot of passion around building portals that are successful, and to us success, it’s the adoption. It’s portals that are really used and where organizations are getting value out of those portals. That’s so critical and a key part of what we do is we work with clients on their portals, really trying to make sure that we’re looking at these challenges and addressing them and that they’re partnering with us to help us do that.


Danny Ryan:That’s great. Thanks so much everybody for taking the time to listen and have a wonderful day. Thank you. Bye-bye.


read more
Bruce HarpleCommon Challenges of SharePoint Adoption

Envisioning Session at the Atlanta Microsoft Technology Center

Tommy serves as the President at ThreeWill. In this role, he works with his leadership team to hire the best people, find the right business opportunities, and ensure that ThreeWill delivers for our clients on projects.

Danny Ryan:Hello and welcome to the ThreeWill podcast. This is your host Danny Ryan and I’m here with my co-host Tommy. How are you doing?


Tommy Ryan:I’m doing well, Danny.


Danny Ryan:Great. It’s a Friday.


Tommy Ryan:It is a Friday. It’s becoming a pattern.


Danny Ryan:This is.


Tommy Ryan:We used to do these on Thursdays. Now it’s Fridays.


Danny Ryan:It’s fine. Hey. That’s not a problem at all. Yesterday you were at the MTC, otherwise known as the Microsoft Technology Center in Alpharetta, Georgia.


Tommy Ryan:Yes. Yeah, it was a good experience.


Danny Ryan:Yeah.


Tommy Ryan:It’s been a while and I’m kind of excited to do it again soon.


Danny Ryan:Nice, nice, nice. Let’s just talk about that. What was the overall, what was the purpose of doing this in the first place.


Tommy Ryan:Well, we were working with a customer that we implemented SharePoint for them back in 2008. They’re still on SharePoint 2007 today. We help them get their site structure in place, think about what are the right kind of divisions of knowledge and and who can lead that knowledge and get some extra network for them.


Danny Ryan:Okay.


Tommy Ryan:Worked until 2009 and they hired a SharePoint engineer and we help that SharePoint engineer get on their feet and be successful within the organization. Over time it was an investment in the platform and they’ve recognized that and they’re back into reinvesting in the platform. So much has changed since the time they got into SharePoint and started trying to grapple with the value of how that applies to their organization and it’s been stale so that time frame from 2007 to what SharePoint is today and Office 365, it’s changed quite a bit. There’s a lot to absorb a lot to learn and we thought this would be a good first step in the journey together to talk about the art of the possible and what makes sense from an adoption and roadmap strategy for them with SharePoint.


Danny Ryan:This is what, it’s called an envisioning session? Or what is it.. does it have some sort of general name to it as far as what you did yesterday.


Tommy Ryan:You know we use their envisioning center as a part of this engagement and I’ve heard them called architectural design sessions.


Danny Ryan:Okay.


Tommy Ryan:It’s really a visit to the MTC and this is kind of the first interaction that you can have.


Danny Ryan:Okay.


Tommy Ryan:With the folks there and then from there you can take different paths and you do things like proof of concepts, using the labs there.


Danny Ryan:Nice.


Tommy Ryan:Work with different people of expertise. We had kind of the general show of what is Office 365 and productivity and then we also, at the end of the day, dug deeper into Windows 10 and mobility, because this organization deploys mobile devices to some of the largest airlines and significantly large companies.


Danny Ryan:Okay.


Tommy Ryan:In the US and over the world. They wanted to get a sense of what is the strategy for packaging and deploying to new devices to essentially get those prepared to go to the field.


Danny Ryan:So they have a script that they somewhat want to go through as far as a high level and then you can start to dive into some deeper details in certain areas then, it sounds like.


Tommy Ryan:Right. The agenda for the day was introductions, who are the players that are here for the conversation and then they gave us kind of an overview of the platform, priming us. Actually before that they went through: what are the challenges? why are you here? how can we help? We had a session before and we had a prep session before that day.


Danny Ryan:Okay.


Tommy Ryan:That was to revisit that with a larger audience, everyone that was there from Stratix to chime in of what their expectations were, what their challenges were that we could address on that day. After getting that bass line we went into the envisioning center and inside that envisioning center we went through the experience of someone using the platform from personal use all the way through collaboration and using the different channels of communication with an Office 365 like Skype, Office 365 groups and Yammer and the whole gamut.


Danny Ryan:And Hololens.


Tommy Ryan:Well. They didn’t. We actually asked about that because they took us for a little tour around the center. There were Surface Hubs and they want to have a Hololens and they’ve asked for one so they’re hoping to get one soon.


Danny Ryan:Nice. That’ll be interesting to see that. You were mentioning, as far as who is it from the client that comes. Is it a group of five people, ten people. How is it decided who comes from the client.


Tommy Ryan:It’s people that are going to have a voice and how are they going to accomplish getting the most out of the platform.


Danny Ryan:Okay.


Tommy Ryan:It was very heavy IT centric. You know, the CTO of the organization or the CIO of the organisation was there along with the director of IT person and the actual lines of business within the organization that are running more technical type operations and even a network administrator.


We had a variety of people really in the IT organization but this is a very IT centric type of service they provide so they are customer-facing, people that are making sure that they’re using the right technology to solve the problems they have with their customers.


Danny Ryan:We were talking about, as we were preparing for this podcast, you’d mentioned what I call. What I call. In Boxborough where having multiple inboxes or multiple ways of people contacting you. Were there a lot of different… Was that conversation had yesterday or just all of the different ways that, “Okay now I’ve got ten different ways of contacting a colleague and I spend my morning trying to figure out how to.” Was that addressed for what happened?


Tommy Ryan:I don’t think that was addressed head-on but the nature of this group was a little bit a reservation around all these different communication channels. They’re coming from a world of really email and SharePoint and Sharepoint that today, is not used very well.


Danny Ryan:Okay.


Tommy Ryan:It’s really just email and then they’re introducing Skype and there was a comment in the group of someone getting spammed internally from Skype, that is as soon as Skype is turned on, that became more of a distraction than a benefit for them in getting things accomplished. That’s probably one of the things that was going through their head the most is one, how do I secure content well. That’s a typical IT type of thought process of, how far do I take it, am I protected against malicious activity or accidental activity. Like sending something out in an email to a customer when you think you’re sending it internally so if you have confidential information, maybe a policy that would prompt you to say, “Are you sure you want to do this, because this is confidential information, do you want to send it externally.


The whole absorbing everything that was there from Yammer to Office 365 Groups to Skype to OneDrive to SharePoint to Exchange. All those, and Delve. They even exposed Delve to them. Those were things that you just feel like, “Well, gosh, I’m just an email today. DO I really need to participate in these other work streams, these other channels of communication.” I don’t think there was an answer there but one of the things that is kind of common is that one place that you can thread it through is email.


Danny Ryan:Yeah.


Tommy Ryan:When you’re looking at Yammer, when you’re looking at Office 365 Groups, those things you can tune it a little bit to determine how much you want to be pulled in to all the activity that’s happening within your organization.


For example, Yammer, maybe you don’t want to stay in touch with what’s in Yammer but if someone wants to pull you in they can @ mention you and you get an email. For Office 365 Groups you can be a member of that group and decide not to subscribe to the updates.


Danny Ryan:Okay.


Tommy Ryan:Depending on how important these channels of communication are to you, you tuned in appropriately. That takes work. There’s a fine balance of how you might configure it to be out of the box for the typical user. It defaults to something that fits the culture of the organization, and that was a theme from the CIO of, we need to look at what is our culture and how do we want the platform to support that culture.


Danny Ryan:Neat. That’s good that he’s thinking about it that way.


Tommy Ryan:Oh, yeah.


Danny Ryan:That’s really great to hear. What else. Were there any other themes that sort of came up that sort of stood out from yesterday.


Tommy Ryan:What I.. was not surprised, but it was interesting to see the emphasis on Office 365 Groups.


Danny Ryan:Oh, okay.


Tommy Ryan:We’re really grappling with that internally. For example, we have a sales site inside of SharePoint where it’s got a document library and it has that sales content. It’s that one place you can go to go get that sales content.


You might not want to make that public to everyone in the organization, so it gets tricky in terms of how do I be collaborative around that content and also keep it secure. We’ve been kicking the tires with Office 365 Groups and with Office 365 Groups, it’s a more collaborative experience, you can kind of set who are the people that are a part of this pursuit. We’ve talked about after that pursuit is done then you can move that content into it’s record repository. It’s that one place to go, but that takes a little bit of automation. We’ve decided to keep it simple and just work with the sales site.


We are continuing to find what are those areas that Groups apply, because it seems like, when you look at the road map, there’s just a ton of updates to Office 365 Groups. You have to say Microsoft really believes that this is going to be big for us. I’d look at it as kind of the equivalency to social groups in Jive. We’ve got that experience of Jive where you had sites and you had groups. Sites had that hierarchy and groups was flat. Groups really were self organizing places that you could go to create and collaborate. This world, I think, Microsoft is jumping on this bandwagon of kind of user driver social content generation, where we don’t want to have to go through IT to go set that up and that makes IT nervous because where’s the structure.


At the end of the day, this environment at this customer, they had control and they put control over this environment and it didn’t flourish. How can you allow for environments to be empowered to collaborate. I think Groups is trying to strike that chord.


There’s a lot coming together with it, it’s every part of the platforms coming together when it comes to Office 365 Groups. You’ve got the email component with conversations, you’ve got a calendar that’s tied to that group. You have a OneNote that’s tied to that group. You have, really, a SharePoint site that is exposed as almost like a OneDrive repository for files. You’ve got Planner, and Yammer is coming soon. That should be anytime we should start seeing Yammer.


Danny Ryan:So there’s Yammer integration with Groups as well.


Tommy Ryan:Right, right. You almost see every facet of Office 365 comes together with a group, and so what I see it as is a way to take a group of people and provisioning everything that has to do with the platform concentrated around this community.


It you need to do something with Notes it’s exposed to you in a simplistic way. If you need to store some files, it’s exposed to you, not as a full blown SharePoint site, but it looks just like a OneDrive site.


Danny Ryan:It reminds me of a security context.


Tommy Ryan:It is a security context. It’s working in security context. Kind of the other side of that spectrum that, yeah, there’s a lot of great things with that, now it becomes a lot of extra containers that are flat and have no structure to them. They’re flat.


How do I go back and look at sales content for a particular customer. I would like to go to the sales library, go down into the customer and then go into the project.


Danny Ryan:Yeah.


Tommy Ryan:And find that content. Now I’d have to go look for it in a flat list of groups.


With anything there’s pros and cons and you have to see how does that play into your organization, in the culture of your organization and how you get work done and how you can discover content over time. Is it more important to have it highly collaborative. Is it more important to have it highly structured. Sometimes those things conflict with each other.


Danny Ryan:Awesome. This is something it sounds like we do with some of our existing clients and something that if they need to take a look at what’s out there, you set this up and it’s a day long? Or how..


Tommy Ryan:It was a day long exercise.


Danny Ryan:Okay.


Tommy Ryan:We work with the Microsoft account manager.


Danny Ryan:Is their account manager there with you during the day.


Tommy Ryan:Ideally they’re there with you, but the size of this account they have the group of partner account managers that are in, I think, North Dakota or somewhere out there in the Midwest.


Danny Ryan:Okay.


Tommy Ryan:That they had to participate over the phone. They want to partner there, they want the account manager there and then the customer.


Danny Ryan:Awesome. If folks are looking for this, this is something it sounds like it’s a good experience for them. If they want to reach out to us to have us participate in it. I imagine we’re just sort of sharing some of the things that we’re seeing in general with our clients and adding in, probably. Chiming in every once in a while.


Tommy Ryan:Yeah, we do that. I looked at this as a way to say, this is a great service for customers of Microsoft. Let’s go in and get immersed in that. It plants a lot of seeds and then let’s step back and say, “Okay, what do we want to take forward from that. What’s resonating and what do we think is the most important things to do this next year.”


Danny Ryan:We were talking before about creating Roadmaps.


Tommy Ryan:Right.


Danny Ryan:This sounds like something that’s probably not a bad thing to do for the Roadmap.


Tommy Ryan:It’s feeding into the Roadmap. It’s definitely, we talked about Roadmap and you said before, we get into the nitty gritty of that. Let’s hear the story from Microsoft.


Danny Ryan:Good. I want to start promoting our twitter handles. Your twitter handle is @tommyryan?


Tommy Ryan:@tommyryan, yes.


Danny Ryan:See, you got it early on. I’m @dannyfryan. The F for Francis.


Tommy Ryan:That’s right.


Danny Ryan:If folks are interesting in things that Tommy is up to, please follow him on Twitter @tommyryan.


Tommy Ryan:That’s right. It’s all together, no hyphen, no dash, no period, @tommyryan.


Danny Ryan:Excellent. You’re tweeting every once in a while, right? Or you’re retweeting my stuff every once in a while.


Tommy Ryan:Yes.


Danny Ryan:Thank you.


Tommy Ryan:I go into cycles but I would say within a month I’ll be tweeting a couple times and sometimes within a week I’ll be tweeting ten or fifteen times.


Danny Ryan:Excellent. Excellent. Well thank you for taking the time to share what happened yesterday. I appreciate you spending this extra time with the client, it’s nice.


Tommy Ryan:Sure.


Danny Ryan:Very good. Thank you everybody for taking the time to listen and please drop by if you’re interested in doing one of these envisioning sessions at your local, well, local. It’s your Alpharetta MTC. I don’t know if we’re going to be going to any other cities to do this. If you’re in the Atlanta or Alpharetta area and are interested in doing this just drop by our site and hit us on the contact us page and we’d love to talk about heading out there with you.


Thank you so much for taking the time to listen, thanks again Tommy.


Tommy Ryan:You’re welcome, Danny. Thank you.


Danny Ryan:Have a wonderful day. Bye bye.


Tommy Ryan:Bye bye.


read more
Tommy RyanEnvisioning Session at the Atlanta Microsoft Technology Center

How to Make a SharePoint Roadmap

Tommy serves as the President at ThreeWill. In this role, he works with his leadership team to hire the best people, find the right business opportunities, and ensure that ThreeWill delivers for our clients on projects.

Danny Ryan:Hello and welcome to the ThreeWill podcast. This is your host Danny Ryan and I’m here with Tommy Ryan. How are you doing Tommy?


Tommy Ryan:I’m doing good Danny.


Danny Ryan:Great to see you.


Tommy Ryan:Yes, it’s a Friday not a Thursday.


Danny Ryan:Not a Thursday. And you still wore fancy socks I see.


Tommy Ryan:I did. And I don’t see your socks. You said you’re going to get some fancy socks.


Danny Ryan:I wore them on Thursday, that’s what I did. I did get some for my birthday from Kailey. We picked out some pretty fancy ones.


Tommy Ryan:How do you like them?


Danny Ryan:They’re nice. It’s a little different. Used to trying to take socks and match them up with my wardrobe or match them up whatever. And now I just don’t care. Just throw theme on. It’s got all the colors. Who cares? Just wear it. But they’re fun. I like it. At least it’s a little bit of a way of relaxing and wearing something little different. It’s cool.


Let’s talk about today SharePoint Roadmaps. I guess you’re coming off of some conversations with clients about Roadmaps. What do we typically do when we’re talking … What is a SharePoint Roadmap, let’s just start with that.


Tommy Ryan:When we work with clients with do product backlogs to envision what the customer needs to do. When we look at that, that’s usually on a project by project basis. We talk about a need, we scope it out, we deliver against that, and then some day in the future we might reengage to do the next thing. A Roadmap is kind of looking out in advance and saying what is the chain of projects or chain of phases, milestones, that need to be achieved as it relates to the use of SharePoint and the organization.


Danny Ryan:Nice.


Tommy Ryan:It allows some big picture. It allows to paint what the future is going to look like and not get anxious about I want to be able to do this. Yes, we’re going to do that but that’s in the 2nd release of the features that are coming out on the Roadmap.


Danny Ryan:And probably who is doing SharePoint right? It’s sort of like my philosophy I think I heard it originally from someone from Jive Software, which is your website is never done. Your SharePoint is never done. If you’re thinking of what am I doing next an where are we? There’s always ways of getting more out of it and talking about what the future is going to look like with it.


Does this tie into, I guess you’re talking about organizationally, what are some of those objectives in the next couples of months, 2 years, and trying to fit in where SharePoint goes to those objectives?


Tommy Ryan:Definitely. This organization they’re financial based institution that has a lot of contracts, a lot of documents that tie into the assets that they manage. They have a certain way, a certain taxonomy for how they describe that type of information. They’re going from being on file shares to going to SharePoint, and they’ve tried SharePoint 3 different times. This time the 3rd or 4th time is going to be the charm.


Danny Ryan:4th time is the charm. If they would have brought us in for the 3rd time …


Tommy Ryan:It could have been done earlier.


Danny Ryan:Probably save some money too. That’d be nice.


Tommy Ryan:There’s some aggressive goals. This organization really has some bright individuals that know what they want and there’s a lot of things that they want to accomplish. There’s also a certain, I would say, timidness to saying is SharePoint going to do this? And we want to not bite off more than what we can chew. Taking a Roadmap approach and having certain releases over time versus trying to crunch that all into one project, one release, we’re allowing the organization to go after what’s the highest business value of what makes sense in terms of their adoption level of the platform and go after those things. Measure that success, come back, and go after the next thing, and have a view of what that next thing is.


With our organization we know that things change, but it’s good to have placeholders of this is where we’re going to go next. Do we have better ideas or switch those out. But at least it allows us to get a sense of what’s coming. What kind of budget do we need to accomplish those types of goal? And how far do we need to spread these things apart to allow the organization to finance it? To be able to adopt it and absorb it as an organization.


Danny Ryan:This is getting to be the time of the years where folks start, actually they’ve already started, asking for budgets cost on things for the upcoming year. And somewhat trying to evaluate projects. Where I think a place where I typically, going into the fall, do a lot of t-shirt sizing. We’re just sort of saying this sounds like it’s a 100k project or something where …


Tommy Ryan:They can make a decision.


Danny Ryan:They can make a decision. It’s just a high level rough order magnitude so that they can say well maybe this is too big of a project, or we could fit a couple of these in next year. Just so that they can start making some decisions on priority for the next year, or what they’re going to do the next year.


Tommy Ryan:Right. And this is in that same vein of they’re trying to begin with the end in mind of where they want to be and that might not be something they can accomplish in 1 year. Our Roadmap, not only does it lay out what are those time frames where things are going to get done, but it has the detail of all that backlog that fits into each of those releases, and it has corresponding budget. That way there’s a heads up and an understanding of what is the commitment to get there. This particular organization they integrated not only doing the development effort or the configuration effort of SharePoint, but also the aspects of training and ramping up the organization, and sustaining that solution in between the times that we’re building the next release.


It really is a full vision what do we need to do to be successful and not just take it from a standpoint of I need to do this type of thing inside of SharePoint and do that in a couple months and then think that SharePoint is going to be successful by just going after one project.


Danny Ryan:This seems like it’s probably, especially for larger organizations, the IT organization itself is trying to come up with a Roadmap. It’s got these different technologies or different areas that they could focus in on. Where we typically come in and is helping on the things that are SharePoint related because of our experience and background. But there’s certain organizations where that’s a key part of where they need to go, and it’s a big part of where they need to go. But in the end a lot of these estimates and projects they’re being weighted against other things that they could do as well. And they’re trying to decide do we move forward?


I was actually having conversation with someone this morning at a client site where they were this year we’re going to be focusing in on this on SharePoint, next year we have this ERP project. They’re trying to fit in these projects as far as where they go and what they can take on as an organization. It’s sort of interesting to also see it not just everybody is just doing SharePoint, but that’s 1 component of an overall IT budget and helping them make good decisions with regards to SharePoint, at least.


Tommy Ryan:Right. You’re looking at it at macro level where when we look at a product backlog for a particular project as we’re sizing things and saying this is so big, this is so big, and it’s got that shopping cart of all these features. Within that project they’re trying to decide what get done what doesn’t get done. And then when you look at it at the macro level of this is the overall project cost compared to other projects in terms of their cost, they can make that decision, what order do these things go?


Danny Ryan:It sounds like a portfolio management type problem where people are weighing one project versus another. But I think a lot of what you do in a product backlog probably could be applied to it at that level.


Tommy Ryan:Same principles.


Danny Ryan:I wonder if a lot of people are doing it if that’s what typically folks do.


Tommy Ryan:Also, sorry Dan, also that concept of estimation when we’re in this time of the year a lot of people are preparing for those budgets, we do a lot of raw estimates where got at a higher level. You might even say at the feature group level where you’re saying I need to import data, export data, I need to update my UI. We go after those types of product backlog to come up with a high level budget, which is different than a say project level budget that we’re going to get the funding, and commit to, and go after. But it’s more from a decision making standpoint. One organization we’re working with they have 3 or 4 different SharePoint migrations and we have to estimate at a high level what are those efforts so they can look at it and say do I do them all together? Or do I do them 1 after another and spread it out across a couple years.


Danny Ryan:Nice. Is doing the Roadmap with them, is that part of an engagement? Is it something we do for free? We just do it for existing clients? How does that work?


Tommy Ryan:Most of the time it’s part of an engagement. If there’s a client that’s looking to engage us to set the vision with them, to understand what they’re trying to accomplish, and lay that out in a Roadmap. It really is an analysis type engagement where we’re going through that and the Roadmap is an output of that. Also, we take the time to do a high level design type document. We’re not really big into a lot of documentation, but we find that a high level design document allows us to say we’re trying to go out this far, and so what needs to be put in place as the foundation to get there? Or what things do we need to take into consideration along the way knowing that we want to reach this ultimate goal.


That analysis engagement is going through and vetting out a lot of the early backlog, really understanding the business so we’re applying the right parts of the technology to support the business. And getting a better understanding of that organization’s maturity level of embracing the platform, so we are going after the right things at the right time. That is typically not like a traditional project estimate. It really takes a lot of commitment and time from ThreeWill and from the client. That could happen in a matter of weeks, it could go as long as a month or so.


Danny Ryan:We’ve done longer analyses like that.


Tommy Ryan:We have. It’s funny, I think our organization gets antsy with some of the times that we do these Roadmaps because we love to implement, so there is a little bit of we’re pulling back on the reigns and saying let’s take some time to really understand what this organization is trying to do. That’s a good investment. Not all customers really think in that perspective. It’s amazing. The customer that I just came from in retrospective we were talking about how did things go. It’s amazing how small that organization is and how committed and how much they went in to investing into a Roadmap, which you would think you’d see in the multi billion dollar companies. But this organization is just serious about being successful.


Danny Ryan:It sounds like they are well on their way to being a multi billion dollar. They’re making good investments it sounds like. That’s great. I know for folks who are listening, if you’re just looking to get a estimate on a project for upcoming year go to the website you’ll see free estimate. That’s something that I work with Bruce on, so if it is something we want to give you the information you need to make a decision about is this something worth going after or not. That’s something, just reach out to us and we can work together with you to come up with what that high level estimate will look like. That’s what I do often.


Anything else you want to add about Roadmaps?


Tommy Ryan:They’re pretty simple. At the end of the day it’s coming up with that high level plan of where you’re trying to go. The neat thing about going through this is we’re excited about doing these Roadmaps because we can bring in our experience of what we see people doing with SharePoint and that art of the possible. It gives you a little bit of time to dream and put some reality behind that dream versus just going in and getting 1 problem solved. Sometimes that’s the right thing to do. You’re not really in that level of wanting to go after a Roadmap.


But if you’re struggling with being successful with SharePoint, I think sometimes it means you need to step back and have that envisioning and set that Roadmap so you can paint the picture. Because a lot of success with SharePoint is not the technology it’s the communication and the role out of the vision that you’re getting everybody on the same page to say what’s the value? If you’re trying to just purely do it from technology, we see those are the ones that struggle. Where it’s just putting technology and the amount of stuff that you do. Sometimes it’s less stuff and it’s spacing it out and having the right pace.


Danny Ryan:It’s funny, when you first mentioned Roadmap I thought we were going to talk about the Office 365 Roadmap and how that’s used. It gets into you call it a Roadmap, it’s just sort of a plan of what is going to be released in the future. It’s still very near term as far as what things are coming, what they’re working on, what’s coming. This is more of, as you were saying, it’s not just the technology it’s looking at more of a comprehensive look at what you’re doing.


Great. I love that we’re doing this for folks. I love that it sounds like people are getting a lot of value of what we’re doing with the Roadmap. Continue on, I’ll work with you to get some stuff definitely out on the website, more about this, and I appreciate you doing this.


Tommy Ryan:Sure. Thanks, Dan.


Danny Ryan:Thanks everybody for taking the time to listen. Have a wonderful day. Take care.


Tommy Ryan:Adios.


read more
Tommy RyanHow to Make a SharePoint Roadmap

Prepare to Migrate from Jive to SharePoint with this New Tool

Chris is a Senior Software Engineer at ThreeWill. His area of focus is consulting in the development of Microsoft .NET and SharePoint technologies. His primary role has been development lead in recent projects. Project roles have ranged from Development/Technical Lead to Development Resource.

Danny Ryan:Hello, this is Danny Ryan and welcome to the ThreeWill Podcast. Today, I have Chris Edwards here with me. Hey, Chris. How’s it going?


Chris Edwards:Hey, doing great.


Danny Ryan:Good, looking forward to getting an update from you. You’ve been busy, my man.


Chris Edwards:I always try to stay busy all the time. Try to.


Danny Ryan:Keeps you out of trouble.


Chris Edwards:Yeah, hope so.


Danny Ryan:Hope so. How are the puppies?


Chris Edwards:They are all adopted except for one. We’ve decided to adopt one.


Danny Ryan:To keep one, very nice.


Chris Edwards:There was struggle is trying to get a name. Figured it out when we finally got one.


Danny Ryan:What’s the name of the-


Chris Edwards:Sheldon.


Danny Ryan:Sheldon, sounds kind of formally dressed or something. Let’s get to it. I wanted to get an update on … I know you’ve created a trial version of the Migrator Tool.


Chris Edwards:Right.


Danny Ryan:I just wanted to get an overview of what that is and just catch up on things. I know you’ve been working on a video as well of what Migrator does and demo for me and just catching up with you as far as what things you’ve been up to lately.


Chris Edwards:Migrator, it is … Basically it’s a initial visual interface that allows someone to just download it. They want to see how large their Jive environment is. We typically work in terms of number of places. When I say number of places, in Jive there are different kinds of places. There’s the concept of the space, concept of a group, concept of a blog and a concept of a project. We just call all those places just to have a generic name term for it.


Danny Ryan:Okay.


Chris Edwards:One of the first things we do in a migration is we do an inventory check. We basically pool all of the different number of places and then a basic hit on the content. To have that initial conversation is hard to know how the day of a customer is. The Migrator utility in its current state doesn’t actually migrate content. It’s not what its intention is at the moment. We’ll talk about that in a minute.


Danny Ryan:The trial version of it, it just goes out and does these counts for you and just get-


Chris Edwards:Yes.


Danny Ryan:Okay.


Chris Edwards:It’s designed to be the super simple. All its trying to do is gather your Jive Instance URL, basically what you use to get the Jive. A user name and password that … In this case, the user name should have the access to all the different places that we need to find. Typically, it didn’t have to have right access-


Danny Ryan:Just real access.


Chris Edwards:Just real access that needs to be able to use the API behind the scenes and actually get hold of the places themselves. Then what it does, it goes off and does, this is magic behind the scenes, it pools all the details and just report a summary. It just allows that conversation to be very clear in terms of when we are looking for the number of places looking for a size of what you guys … What a particular Jive particularly has. We have a clear talking point and clear denominator to work off of.


Danny Ryan:Partially it’s kind of funny because when we’re talking about doing pricing based off of places …So many times I say species not places. I’m saying the right word places. I had some folks who prospects who were saying, “Okay, that’s great. How do I find out what that is?” I would be like, “Ah.” There’s not a real place you can go to. I’m assuming in the Jive admin where you can go see or just show you the same information, correct?


Chris Edwards:There’s not a clear way of saying, “Okay Jive, how many places are there and what does that break down? I’ve not been able to find a clear indicator of that. That’s what the simple utilities in its current state is designed to do.


Danny Ryan:There’s also a very real. This is almost like what you often do with projects for flashing one through the pipes which is seeing if somebody can test it against their Jive or whatever they happen to be running Jive-wise. This is just hitting drive, it’s not hitting SharePoint or doing anything with regards to Office 365 or SharePoint.


Chris Edwards:Yes, that’s actually a great point. It’s only hitting your Jive Instance, so it is not … Before there’s backend information. It’s not recording information other than what’s in the log file, it’s log goes to the really application apps. In the video I pointed that out because I know what that is.


Danny Ryan:You’re storing the credentials anywhere-?


Chris Edwards:We’re not storing the credentials anywhere. The intention was to not do any of that. It’s really just an exercise to get the number of places to have that conversation.


Danny Ryan:Where does this go? I know one of the things I’d love to have is just 2, because a lot of people ask, “Can you just migrate one place for me?” I know maybe eventually if there’s some arm twisting going on and you have enough time we may be able to get to that or maybe not. Who know? We may need to work into it.


Chris Edwards:I’d love to look into it.


Danny Ryan:I know that’s something we want to do. There’s also maybe getting a little bit more information about sizes of things or what are the things are on the backlog right now or things that you want to add to the trial version?


Chris Edwards:The trial version, the next major … The logical thing to do would be to go a little deeper in terms of the contents. One of the things we do is … Part of the inventory process is we capture the number of places but we also do an initial high level pool of content that actually pool the binaries, not do the full mass of pool but the high level details of what’s in the content that allows us to get the number of content per place.


The beautiful thing about that is to do that in a simple way, adapt to the utility then we can actually start talking about how do we group all places in such a way that we’re able to batch them up. We can do them in a very consistent way. If we wanted to migrate 100 or 200 or maybe 1,000 at a time, that 1,000 we identify is similar to the next 1,000 and not guessing in terms of how long something is going to take. We get more predictable with how long an actual migration is going to take. The next phase would be more predictable, has a more predictability to the output and how long things will take to do.


Danny Ryan:Very nice.


Chris Edwards:It just helps us plan and it adds to the overall process of how migrations are done. That information will be super useful to have.


Danny Ryan:It’s a nice, I appreciate you creating a little video and I’ll put a link to the video in the notes in this podcast, but just walking through what the typical drive migration looks like and what the tool does. I know it’s a command line tool so its doing what it’s doing and it’s writing to a log file and you … I really appreciate you going through what the whole process is. That just makes it more real to me and for folks who want to see what does it look like to do an actual migration.


Chris Edwards:We’re trying to keep things simple. We’re trying to go after stuff that truly makes sense. We want to help people be successful in their migrations. We don’t want to overdo it or over-engineer it. At least we’re very specific about where we’re going after, ask the right questions and make sure we’re able to things correctly. Also estimate things correctly so we don’t over blow the budget or anything like that.


That’s the only designed to be … Someone to go from end to end, be predictable about it and be successful the whole process. Also, keeping the tool simple, allows us the customer is done very easily. Someone, “Oh, I don’t like the that works.” I said, “Wait.” The whole migration process, I want to change something about it. I’m going to make it very easy for us to adapt to that.


Danny Ryan:Very nice.


Chris Edwards:That’s the plan. That’s your idea.


Danny Ryan:You are in a middle of migration right now, right?


Chris Edwards:Yeah.


Danny Ryan:How is that going?


Chris Edwards:Going pretty well. Looking forward to getting this one under the belt as well, but it’s good it’s a pretty big one.


Danny Ryan:Big like certain amount of content or big like number of spaces or number of places?


Chris Edwards:Number of places.


Danny Ryan:How? Do you mind me asking?


Chris Edwards:We’re actually migrating 2500 but then archiving over 10,000 so it’s a fairly large effort.


Danny Ryan:Very nice. Well done.


Chris Edwards:Yeah.


Danny Ryan:Well done. That’s it for now. I appreciate these little updates and continue your hard work. There’s lots of people who are contacting us about migrated from Jive to SharePoint and Office 365 and it’s amazing what you guys have built over the last couple of years. It’s not just the tool, it’s also the whole process and the far that you guys have put behind this that I appreciate.


Chris Edwards:We’re also looking at improving how we can really leverage the SharePoint. The SharePoint functionality in what it does. I’m really trying to change the way we think about … This is not your bunch of wikis. Let’s just not migrating Jive content, let’s make this content come alive in SharePoint and really take advantage of that. We’re looking into that as well.


Danny Ryan:I think we’ve recently seen some of the new you. All I changed is the SharePoint and some of them smell a little Jive like. They’re trying to go a little bit more down that pass. Hopefully we’re getting more towards they’re moving a one to one and the experience is similar to … In SharePoint to what you have in Jive. It’s because there some transition and there’s some change right now and hopefully we’ll see Office 365 continue to improve the whole UX experience and then getting the content and hopefully everybody will be happier With that improved experience.


Chris Edwards:Absolutely. Looking forward to seeing that continue to improve.


Danny Ryan:Thank you for taking the time to do this, Chris.


Chris Edwards:All right, thanks.


Danny Ryan:Thank you everybody for listening. Have a wonderful day. Take care. Bye bye.


read more
Chris EdwardsPrepare to Migrate from Jive to SharePoint with this New Tool

Ledger – An Open-Source SharePoint Inventory Tool

Will Holland is an Software Engineer at ThreeWill. Will has proven to be adept at understanding a client’s needs and matching them with the appropriate solution. Recently he’s developed a passion on working with .NET, MVC, and cloud-based solutions such as Microsoft Azure and Office 365.

Danny Ryan:Hello and welcome to the ThreeWill podcast. This is your host Danny Ryan and today I have a group of people here with me. I’ve got four people in the room and I’m pretty excited about doing this podcast. I have two interns and someone else from ThreeWill and myself and we’re going to talk today about something that they worked on this summer. It’s called Ledger. We’ll get a little bit more into what exactly that is. I’m going to have them do a quick intro. What your name is and what your role is, and anything else you want to say. You don’t have to say anything else if you don’t want to.


Will Holland:Hi, my name’s William Holland and I’ve been here at ThreeWill. I’m a software engineer and I love Danny.


Danny Ryan:Thank you Will. That was so nice. You love being this close to me, right?


Will Holland:Yeah.


Danny Ryan:I noticed how as soon as you talk into the mic you back away a little bit. It’s all right, I’m not going to hold your hand dude. Okay, up next. You can step right up to the mic.



Luke Perrin:


Hello, I’m Luke Perrin. I’m an intern for the summer. I go to Southern Polytechnic State University.


Danny Ryan:Excellent.


Luke Perrin:Or as it is now called Kennesaw University.


Danny Ryan:Kennesaw University, welcome. Excellent, and finally.



Jared Daniel:


Hi, I’m Jared Daniel. Intern here, I’m from Georgia Tech and I actually love Danny even more than Will.


Danny Ryan:Another Georgia techer here.


Luke Perrin:I didn’t know this was about to turn into a love triangle.


Danny Ryan:This is a love triangle. All right, we got Georgia Tech represented in the room. That’s very nice. Awesome. Thank you guys for taking the time to do this. You’re wrapping up your internship here within the next couple weeks, is that correct?


Jared Daniel:Yeah, that’s right. This week actually.


Danny Ryan:This week and you’re out of here. Is that why you guys are so happy today? It’s like, it’s your last week, yeah.


Will Holland:They were really excited to do a podcast.


Danny Ryan:All right. Why don’t we get this kicked off and Will, I’ll direct these to you initially and you guys feel free to jump in if you’d like to. Ledger, where did this thing come from? Give me the backstory on what Ledger is?


Will Holland:Yeah, ledger is a SharePoint inventory tool. A way for you to take a look at all of the different site collections you have in your Office 365 tenant or your on-premise farm.


Danny Ryan:Okay.


Will Holland:You can get some data points, like how much data a particular site collection has, how many list items, who owns it, those sort of things.


Danny Ryan:Nice.


Will Holland:The idea came from a previous project we were on, we were doing a large scale migration and we sort of developed a similar process for inventorying these things.


Danny Ryan:Okay.


Will Holland:It was sort of done in a hastily way.


Danny Ryan:Okay.


Will Holland:We wanted to refine that process a little bit and make it reusable, something that we could potentially give to future clients.


Danny Ryan:Okay.


Will Holland:To help them with doing some migration analysis or just wanted to keep tabs on things in their farm. In the end we decided to actually make it open source, so this is now on GitHub,, it’s called Ledger on there. Check it out, contribute, we’d be happy to have that.


Danny Ryan:How does somebody get started with this? Walk me through that process, somebody might be interested in doing an inventory and do they go to the GitHub site to get started?


Will Holland:Yep, for now you go to GitHub and download the source code. Unfortunately we don’t have a packaged exe right now.


Danny Ryan:Okay.


Will Holland:You’d have to download the source code and compile it, we will be fixing that hopefully sometime in the near future but there’s two components to it right. For the on-premise version you have to run a one executable that’ll go through and actually build the list of all the site collection URLs.


Danny Ryan:Okay.


Will Holland:Then there’s a second component which can be run from anywhere that will go through and get all the various data points.


Danny Ryan:You would run that first exe if you had an on-premise?


Will Holland:Mmhmm (affirmative).


Danny Ryan:Okay. But then if you were on Office 365 completely …


Will Holland:Then it’s just the second part.


Danny Ryan:Then it’s just that second part.


Will Holland:Correct.


Danny Ryan:That second part, what do you run? Is it like a command line utility? What are you running?


Will Holland:Right now, it’s just an executable.


Danny Ryan:It’s still an executable that’s run against Office 365.


Will Holland:Yeah. Correct, you would download it in any laptop, Windows laptop I should say.


Danny Ryan:Okay.


Will Holland:You would run it from there and as long as you have access to SharePoint online you can get any of that data.


Danny Ryan:So there’s two executable’s that we’re talking about?


Will Holland:Mmhmm (affirmative).


Danny Ryan:Okay. Then the executable you’re supplying to it some credentials to go and do the inventory?


Will Holland:Yeah. Jared actually programmed the bit of the interface, I’ll let him speak to everything that goes into it. But yeah, user name and password definitely part of it.


Danny Ryan:I’m using this for the first time and what’s the easier one to go after, the on-premise or the Office 365?


Will Holland:On-premise.


Danny Ryan:The on-premise. I’m using the on-premise version of this. This is not going to be a tough question. I’m using that, what am I’m supplying to it, some credentials? What am I doing?


Jared Daniel:Yeah, you’re going to need an account that has access to all of your SharePoint sites.


Danny Ryan:Okay.


Jared Daniel:As long as you have that, user name, password is all you need to put in and then those are the only two perimeters, you run it from there.


Danny Ryan:Okay. Then that starts going out, inventorying and then writing it to a list or what is that doing when it does that inventory with the on-premise one?


Jared Daniel:It goes to a SharePoint list.


Danny Ryan:Okay.


Jared Daniel:You would have a SharePoint site setup and it would generate the list for you. You don’t have to create the lists in all the different fields, it will do all that for you.


Danny Ryan:Okay.


Jared Daniel:Then populate it with all your data you get from your sites.


Danny Ryan:Then you run that and then you’ve got some custom list that’s populated with a bunch of information about your site collections?


Jared Daniel:Yeah, that’s right.


Danny Ryan:Okay. That’s the on-premise version. Is the Office 365 version doing something different? How is that doing … I’m a little confused still about the difference between the two?


Will Holland:Sure, it’s easy to be confused. Right now the only functioning part we have is for the on-premise version. That’s what these guys have been working on all summer.


Danny Ryan:Okay.


Will Holland:The only difference between the on-premise version and the future, I’m using air quotes there.


Danny Ryan:Okay.


Will Holland:The future online version is just the removal of the on-premise part.


Danny Ryan:Okay.


Will Holland:On-premise versus SharePoint online, you have to have that server component to get the actual URLs for every site collection. SharePoint online is much easier.


Danny Ryan:Okay.


Will Holland:It just hasn’t actually been coded yet.


Danny Ryan:Okay. It’s something that eventually it’s going to be one executable that you’re using or will there always be two?


Will Holland:There would always have to be two.


Danny Ryan:There will always have to be two, okay. I’m using the online version, am I still supplying credentials to that and it goes and does the same thing or?


Will Holland:The only difference would be you would have to give it a URL.


Danny Ryan:Okay. I point it to a specific URL and it goes out?


Will Holland:Yeah, you would have to point it to your SharePoint tenant.


Danny Ryan:Okay, excellent. Let me get why somebody would want to download this. They want to get an idea of what’s in a specific … This is multiple sites? It can crawl multiple site collections, is that correct?


Will Holland:That is correct.


Danny Ryan:Okay, then you’re going out and give me some examples of some of the … You mentioned some of them a little bit earlier, but maybe a little bit more details about, does it do things like take a look at what’s been customized, does it look at workflows, what sort of information is in the inventory itself?


Will Holland:There is quite a bit of information. A few that I mentioned earlier, list items and guys, jump in if I’m missing anything. There’s list items, the number of lists, document libraries, which kind of go into that one total. It will tell you how many workflows there are.


Danny Ryan:Okay.


Will Holland:The customization that was featured that we had in our previous project, something that we tried to get these guys to go after, it ended up being a little more complicated then we had time for. Didn’t we get the custom solution stuff in?


Jared Daniel:Yes, we got that in.


Will Holland:Like I said, it will detect if you have a custom farm solution.


Danny Ryan:Okay.


Will Holland:On a site collection. What else is there guys?


Luke Perrin:In place information management. I remember it does have that. Let me think what else.


Will Holland:You work on the taxonomy stuff right?


Luke Perrin:Yeah, global taxonomies, taxonomy that’s shared between different site collections. It tells you if it has any of those so that you’ll know for migration purposes if you need to copy that. It also tells basically if you have taxonomy terms that are only for that one site.


Danny Ryan:Okay. Lot’s of great information. They would use this in order to determine about upgrading to SharePoint 2016 or moving to Office 365, right? That’s what they’re going to be using this information for.


Will Holland:Yes, that’s the primary business case that we have for right now.


Danny Ryan:Okay.


Will Holland:You’re looking to do a migration and you want to get a sense for what you have out there. Help you kind of determine how long it’s going to take, how much money it might costs.


Danny Ryan:Nice.


Will Holland:Something like that.


Danny Ryan:We put it out on GitHub just so that the world, the community can go use this, if somebody sees something they want to add to it they can go add to it, all that good stuff that comes from open source, correct?


Will Holland:Yep, it was something that we had a great experience learning from on that previous project. We thought it was a useful tool and we thought it was something that we would definitely use again in the future and as sort of a way to share that knowledge that we gained from that project with the SharePoint community we wanted to go ahead and put it on GitHub.


Danny Ryan:Nice. You guys will probably be keeping an eye on contributors, seeing who’s actually using this once it takes off and goes viral, right?


Will Holland:Yep, that’s absolutely right. That’s on my to do list every day, check for new contributors.


Danny Ryan:This is the first time … Well there was one other thing I thought I saw in our GitHub, it was one of the internal meetings that we had that we were doing on Friday’s …


Will Holland:Yeah, we had a hack-a-thon and we were using GitHub for that. That’s usually kind of been the limited use of GitHub for us. Internally is just for little fun projects that we’ll do sometimes. We use more private source control for clients and we don’t have a private GitHub account, so everything we do on there is public.


Danny Ryan:Nice. Congratulations guys. How does it feel to put something out there? The world can see all your code. I don’t know if the world wants to see when I was coding. I didn’t want the world to see my code. Does that make you guys a little nervous?


Luke Perrin:Will wanted me to clean out my code, I tried.


Danny Ryan:Excellent, yeah.


Jared Daniel:There’s no saving my code. Being humble.


Danny Ryan:Yep. It’s nice to have something out there. I look forward to seeing how much it’s used on upcoming projects for us. It will be interesting to see if other, I guess other consulting companies can use this as well to sort of get inventories of stuff and hopefully we’ll get some contributors from them and then probably larger enterprises who want to use this as well. Are there other tools out there to do similar things than this? Did you look into that at all?


Will Holland:Yeah, there is a well known tool that we learned about or I learned about on that previous project called CASAHL.


Danny Ryan:Okay.


Will Holland:It’s a very heavy weight licensed product that does everything that we were trying to do and a whole lot more. But again it’s not a free product like what we put on GitHub.


Danny Ryan:This is more of a light weight version of what that does?


Will Holland:CASAHL from my understanding has a lot of reporting capabilities. Will tell you that this is a very complex site, this is a very easy site to migrate. Our tool kind of says, here’s all the data points.


Danny Ryan:Got you.


Will Holland:You can kind of formulate your own opinions from that but again it’s free.


Danny Ryan:If it’s in a custom list, I’m sort of playing this through, somebody can take that data and pull it into an Excel spreadsheet or do different things that everybody can do within a custom list in SharePoint.


Will Holland:Yeah, once it gets into a custom list, you have the full power of SharePoint behind it so you can do all sorts of crazy stuff with it, put it in a workflow, export to Excel, all sorts of stuff.


Danny Ryan:Excellent, great. I appreciate the overview there. Guys, what were some of the things, anything that you picked up learning-wise from being on this project? You did learn something this summer, correct?


Jared Daniel:I honestly hadn’t been exposed to SharePoint at all before this.


Danny Ryan:Okay.


Jared Daniel:It was pretty cool to see a tool that a lot of businesses use on their backend.


Danny Ryan:Mmhmm (affirmative).


Jared Daniel:It’s honestly a lot more complicated then I thought it would be but that’s what this summer was for, it was for learning all about that.


Danny Ryan:Yeah, excellent. It was getting some new exposure to SharePoint. There’s not going to be like at Georgia Tech you’re not going to have any classes where you’re learning about the SharePoint object model.


Jared Daniel:I don’t think so.


Danny Ryan:CSOM and all that wonderful stuff. You get to look forward to that in your career after you’re done at Tech, you get to deal with some of the kludge stuff, right?


Jared Daniel:Yeah.


Danny Ryan:Well good. Some good exposure for you to get, that’s excellent. What about over there.


Luke Perrin:I’m in the same boat as Jared. When I started I had no idea what SharePoint was at all. Having to learn how to code for SharePoint on top of having to code for the first time in about four semesters was rather entertaining.


Danny Ryan:Good. Did you pick anything up? You were running, were you using Scrum to develop this at all?


Luke Perrin:A little bit.


Danny Ryan:Yeah a little bit. A touch, you were using the S and the C part of Scrum.


Luke Perrin:We did a few sprint plannings and stand ups.


Danny Ryan:That’s good. Did you have daily stand ups?


Luke Perrin:For the first while, yeah. Then things changed.


Danny Ryan:Then life occurred.


Luke Perrin:I’m a terrible Scrum master, what can I say?


Danny Ryan:No, here it comes out. That’s been fully documented now. O’well for posterity to see. Let me ask you guys, for the interns was this your first experience with using an Agile process like Scrum or you pick that up in school, what’s your experience?


Jared Daniel:Yeah, this was the first experience for me.


Danny Ryan:Okay.


Jared Daniel:There were a few meetings we had about explaining the process. It took me awhile to figure out why it was even helpful but I can see how that’s a lot better than the waterfall approach.


Danny Ryan:Got you. Excellent.


Luke Perrin:Same boat again. Throughout school they kind of shoved the waterfall method down our throat and I actually like this a lot better. It flows a bit easier and is a bit more useful.


Danny Ryan:Mmhmm (affirmative). I think one way of looking at Agile and Scrum is you’re doing a lot of really short waterfalls. It’s quicker feedback on the whole cycle which is always a good thing to get. Good for you guys to get some exposure. This is the last week, huh? What was one of your favorite things about the internship besides the Three Musketeer bars and the free coffee, was there anything that you really liked about the internship?


Jared Daniel:Shout out to Will for coaching us through all this and putting up with our dumb questions.


Danny Ryan:Nice.


Jared Daniel:I would probably be sitting at the beginning of this project still if it weren’t for him helping me out with it.


Danny Ryan:Nice. Very good. You can shout out to me if you want to?


Will Holland:Luke, I know there’s a shout out to Danny.


Luke Perrin:Probably to everyone in general that works at ThreeWill, because between everything I’ve been having to do this summer for the internship I’ve learned a lot and definitely Will for putting up with the questions and Jared for putting up with my terrible code.


Danny Ryan:Now the whole world can see, that’s excellent. We appreciate everything you guys did this summer. Thank you so much. Thank you for putting up with me today on doing this. Hopefully this was not too painful and you can share this if you want to with friends and family or you can never share and hope it just goes and nobody ever listens to this. Who knows? I appreciate you guys taking the time to do this. Thanks for all your hard work. Thank you Will for leading up the inters this summer. That was very cool for you to step up there.


Will Holland:Thanks to them for making it easy.


Danny Ryan:What was that like?


Will Holland:It was my first experience doing anything of the sort and looking forward to hopefully doing it again.


Danny Ryan:Awesome. Thank you, I appreciate you guys chiming in on this podcast and thank you everybody for listening and have a wonderful day. Take care. Bye-Bye.


read more
William HollandLedger – An Open-Source SharePoint Inventory Tool

The Most Innovative SharePoint RFP We’ve Seen in 15 Years

Tommy serves as the President at ThreeWill. In this role, he works with his leadership team to hire the best people, find the right business opportunities, and ensure that ThreeWill delivers for our clients on projects.

Danny Ryan:Hello and welcome to the ThreeWill Podcast. This is your host, Danny Ryan, and I have my co-host with me here, Tommy Ryan. Hello, Tommy.


Tommy Ryan:Good morning, Danny.


Danny Ryan:How are you doing?


Tommy Ryan:Wonderful. Ready for the cookout today.


Danny Ryan:Excellent. What do we have going on today?


Tommy Ryan:The product showcase.


Danny Ryan:We talked a little bit about that. That’s one where we get together and share some of the stuff going on and projects, take a little bit of a deeper dive.


Tommy Ryan:That’s right. That’s right. We go out and grill. We have the leadership grill for the team.


Danny Ryan:I’m not going to be on that lead. I’m not invited to the leadership. I’m just kidding. You guys do a great job with grilling out. Thank you for doing that.


Tommy Ryan:Sure.


Danny Ryan:Today, I wanted to follow up. Last week, we talked about why starting with a workshop … Why we typically break up the projects into two steps and the benefits of doing that. This week, we wanted to focus in on a recent … We’ve done a lot of RFPs, a lot of RFPs.


Tommy Ryan:A few.


Danny Ryan:I tried to minimize the amount of RFPs. I know you go after it a little bit different. We’ve been in business for a long time and through the years have had some RFPs come up. A majority of which we typically won’t go after or we’ll just find it as a bit of a waste of time. More recently, have done an RFP that we thought was pretty innovative, and I just wanted to sit down and talk with you about that. Maybe share this experience that we had with prospects and clients so as they look at their next RFP … Just share some of the things that we learned. I guess to get us kicked off with this, describe what typically happens on an RFP, and then what was different about this one.


Tommy Ryan:Well, with a typical RFP, there really is a person that’s driving. We need to go out there and, say, choose from a group of vendors. That might be driven based on price. That might be driven based on requirements of the organizations like the governmental organization. It might be due to not having a good vendor and wanting to go through the process of sourcing and looking for who is that next vendor or vendors that we get us to help on our application development or maintenance of our environments.


That RFP is written to be able to be distributed to organizations that can provide those services, and they have to follow all the instructions, fill out every line item on that RFP and submit it. Sometimes it’s selected from that and sometimes it’s a two-step process where there’s a narrowing down and they take a deeper dive with those vendors through maybe reference checks, maybe through further interviews or further questions. That’s typically how we seen it run.


In a lot of cases, there is a vendor that’s helping the customer create what that RFP would be. In those situations, the other vendors that come in, you look at the vendor that’s creating the RFP as the organization in column A of that spreadsheet. There’s column B, C, D. Those are what we call column fodder. A lot of times it’s going through the motions of we have to do the RFP and because we have to do it, we need to do all the work to prepare for that. A vendor that’s in on that conversation, in on that envisioning of what’s need to get done will create that. Sometimes they’ll create it in their favor, not always, but I think it’s always in their favor if they’re in the seat of working with the customer to create what’s going to be the RFP scope of work.


Danny Ryan:It’s funny. I’m thinking about it back over the last couple of months. We’ve had, in another circumstance, someone approach us about an RFP. We ended up sending back some questions to them. They said, “Well, as part of this RFP, we can’t answer questions.” Then we just want to back wall. We’re not going to participate because this is … How are we going to work together if we cannot ask questions? That’s one where we just stepped out of the whole thing.


Then this one was interesting because it was a very well-known brand that typical folks interact with on any given Sunday. With these folks, you and I talked back and forth about it. I sent back an email to them saying, “Hey, guys. We’re just a 30-person consulting firm out of Atlanta, Georgia. Yes, we’re great at what we do, but are you really sure you want us to participate in this RFP?”


I think a lot of cases you won’t … Again, if you’re looking for column fodder, you’re always going to say, “Yes, we want you to participate,” because you need to have those other columns filled out. This one I think we got back an answer which he talked about why he chose us which had to do with our process. Got into I think some things that we felt like it was worth our while to go through this. We did end up participating in it, talking about it internally and going through the process.


The first part of this was very similar to a lot of RFPs that we go through which was a series of questions that were asked and we fill it out. They, like with the workshop, had a two-step process which was an initial selection of vendors and that wasn’t … I don’t know how unique that was with other RFPs.


The second part of it was what really what I wanted for us to really emphasize and talk about which was after you got through that first round, which we were fortunate enough to get through, they had a proof of concept stage which allowed for us to go after a smaller project together. Tell me more about what that is, why we thought that was innovative.


Tommy Ryan:It was a proof of concept of something that really was a value to them. They were setting up an extranet on Office 365 and wanted to go through the process of improving what they’ve done in the past, enabled their power users to get more out of the platform.


We don’t know what the other vendors had as POCs. My assumption is it was something different, but it could have been the same thing. We went through that and we treated it just like a project. We had a team. We had a Scrum master, an architect, a dev lead and then an additional developer come in. It was only around 80 hours of work but we treated it as a full life cycle engagement where we had two sprints. They got to go through the process of sprint planning, daily stand-ups, sprint reviews and adjustments to be able to pull in scope. What is the next sprint based on what you learned in the first sprint? What’s the next set of things that are going to be the most value for you?


We treated it as though this is real money. We’re not just sitting here going through a sales process. We’re engaging as a delivery organization so they can see what they’re buying. We’ve never been through an RFP that was like that. Additional to that, what was unique about it is they said for the vendors that are not selected that they’d be compensated for their POC.


Danny Ryan:My high sales expense cost alert alarms were going off, but now they’ve gone off.


Tommy Ryan:Right.


Danny Ryan:This was something that was agreed upon that at least we’ll be … 80 hours is not a lot of work but it is still-


Tommy Ryan:It’s a lot of money for a small company.


Danny Ryan:It is a lot of money for a small company and there’s a lot of work. We were pulling people off of other billable projects. It’s something that had an impact to us to go and do this. That’s interesting. How did that make it more real?


Tommy Ryan:Well, when you look at it, if you’re trying to sell yourself to an organization, you’re looking at, well, let me impress them. Let me go to the nth degree and gold plate a lot of things to really impress their organization. With knowing that they’re going to pay for it, you want to feel like we put just enough of effort compared to the value that was received. You’re really thinking about, “Is this good enough?” Then moving on to the next thing which is the way we operate within projects. They got to see what we really work like, what style we have, what approach we have when it comes to a real engagement versus let’s just give you a bunch of bells and whistles. That looks great. When it comes to our project, you’re not going to really see that because that’s not practical. It got real with that. The decisions that we made there are some things that we probably would have done if it was a sales effort that we put to the side because they didn’t see the value. It allowed us to have that back and forth.


It’s amazing, very refreshing. We were talking about this yesterday in our retrospective as we were thinking about what we learned through the RFP. We found out we weren’t selected and that was good news and bad news.


Danny Ryan:I can’t name this podcast how to win an RFP?


Tommy Ryan:It’s how to be a graceful loser. Being compensated, that’s a positive side of it. Also, we had another positive side. They look at how we performed and said, “You’re really more for custom application development versus more of the managed services piece of what they had.” It was more of a cost equation than a how much SharePoint knowledge and how deep is your process.


Danny Ryan:I think our sweet spot has been typically hitting project services as well, too.


Tommy Ryan:Right. When we were looking at this, they basically said there were two opportunities there. One is the managed services piece of maintaining applications and one is for creating new which they do a lot internally, but there are times that they need to create from scratch, let’s say, or a very major enhancement where they can’t do it with their own people. They would need to get someone involved whether that’d be their managed services partner or another vendor. We’re in that list of another vendor based on what they experienced and what they liked. We got a lot of great feedback. A


t the end of the day, we’re not looking be the lowest cost provider. Losing because it was lowest cost provider is affirming that that’s not what we’re targeting. If that’s what they were looking for, then we’re not going to be the number one person in that column in terms of the rating. We’re looking for more of the quality, the process, the people aspect of it.


That was something that came out of our retrospective to ask in RFP is how are they weighing certain factors? What are the critical success factors? We got a sense of some of that but we really didn’t dive as deep to understand. Would they share that information about price of that being a key, key factor? Maybe they would have. You never know.


Danny Ryan:We’re seeing out of this, I think, there are also a couple of things that I think going through this RFP were you really … Both sides are interviewing each other. I think part of the folks thinks that when you’re running an RFP, you’re just looking at the vendors. If they’re good vendors, they’re interviewing clients as well to see, hey, are these going to be good folks to work with? Are we going to be able to be successful together?


I think one of the positives that I saw out of this was that we provided references to them. They did end up talking to the references. I know if you are out there putting an RFP out there, and you say you’re going to talk to the references … I’ve had so many times where I have worked with … These are important people to us who I try to set up these references with and they never happen. They never even contacted. I think a part of it I feel more comfortable with working with this organization because they’re going to do their do their part. It’s the little things. It’s knowing that they’re going to take care of their side. They’re going to do the things that they say they’re going to do.


I think doing the reference checks … I follow up with folks to say, “We’re able to talk to them, what was said.” Those types of things. I think it’s important if you are running an RFP to make sure that if you’re asking for references to set clear expectations that who you’re going to contact and then contact them.


Tommy Ryan:I agree. I think what was refreshing about this RFP is I really felt that it was a two-way street, not only from a compensation standpoint, that was a big part, but also the interaction. They’re busy folks that we’re working with but they participated to allow us to give them a sense of how we deliver. You know, at the end of the day, we can’t be successful without it being a team effort with our customer. To get a sense of that, helps us to understand what’s our likelihood of success if we did go forward with this customer. We’ve got customers. It’s on a spectrum.


The ones that end up not participating with us in the process of building out that solution from collaboratively working through what’s important, that’s really proportional to how successful we are with the engagement. It’s not just the money. It’s not just getting a good bill rate and a lot of project work. It’s looking at how well do we work together because that’s going to affect the morale of our teams. There’s less churn around talking through the things that are unproductive about the engagement. It’s always better when we have good chemistry with the customer.


Danny Ryan:I think that’s also one of the things we look at with these RFPs is if the expectation is, hey, we’re going to write a spec. You guys are just going to build to that spec. You’re going to take what we have and go run with it. There’s no interaction. I don’t think we’re as valuable as an organization. We want to go work together to go build something out.


I think there was a part of this whole process where there was this interaction between the two companies that allowed for us to build something better than if it was, hey, here’s your RFP document. Tell us how much this thing is going to cost for you to go build this. There wasn’t anything that was designed or put together as two organizations coming together to try to figure out the right solution for what we’re trying to do. I think that was a part of this whole process as well. Anything else before we wrap this up, Tom?


Tommy Ryan:No. Well, the only thing is making a RFP process where it is collaborative. It is a team effort. It’s not a spreadsheet that you have to fill out and then the vendor is selected. Those are the ones that we think are not going to to allow us to be in a position to succeed in many ways. Succeed in terms of winning RFPs. Succeed in terms of finding customers that we’re going to be able to do great work with together. We’re learning that and we have over the years.


RFPs, we participate in very few. As we have got experience with RFPs, this one has been the best, the one we did just recently. Hopefully, other organizations look at that and see the benefit of making an investment because it is a long-term investment that’s going to impact their success. You have to select the right vendor. If you don’t go through the process of working together, I think you’re at high risk that you selected the wrong vendor because you’re going to do it basically probably on price because everything else is pretty subjective. It’s a little bit harder to really validate how well an organization is going to serve your needs until you get in the saddle.


Danny Ryan:Awesome. Thanks, Tommy, for your time.


Tommy Ryan:Sure. Thank you, Danny.


Danny Ryan:Thanks, everybody, for listening. Part of this is if you just try to put out a SharePoint RFP and not have a whole lot of interaction, then you don’t have to drop by the website. If you’re really looking for somebody who is focused in on SharePoint, is really passionate about using Scrum and to build out something better, and really looking for more of a partner just not the typical vendor out there, that’s what we’re focused in on. ThreeWill, we’re out in the Southeast. Especially if you’re companies that are in the Southeast and looking for a partner, drop by our website. Come by. Say hello.


A chat window may open and it maybe in the chat window my famous marketing intern, Austin. Just drop by the website. Come by. We got lots of great resources up there. Subscribe to the podcast and just look forward to continuing this conversation with you, Tommy. Thanks, everybody, so much for listening today. Have a great day. Bye-bye.


Tommy Ryan:Bye-bye.


read more
Tommy RyanThe Most Innovative SharePoint RFP We’ve Seen in 15 Years

Cadwalader Partners with ThreeWill to Win Best Intranet of 2016

Danny serves as Vice President of Business Development at ThreeWill. His primary responsibilities are to make sure that we are building partnerships with the right clients and getting out the message about how we can help clients.

Earlier this year the user-experience research firm Nielsen Norman Group announced the winners of the Intranet Design Award for 2016.    Among the winners for Best Intranet were ThreeWill’s client Cadwalader, Wickersham & Taft LLP.  The winning intranets were chosen by expert review based on design and usability from an international field of submissions.

ThreeWill worked with Cadwalader in setting up their SharePoint Infrastructure on Azure, Authentication, SQL Infrastructure, Design/Implementation of Branding and Handshake Software configuration.  The project lasted 3 months and was completed on time and under budget.

When wrapping up the project with a project retrospective, Cadwalader shared that they liked having a concise sales cycle, a full product backlog to support justifying hours and dollars for the project, having multiple user experience experts available and our ability to find ways to solve complex problems.

ThreeWill, a Microsoft Gold partner based out of Atlanta,  helps teams work together better by building solutions on SharePoint using an agile process.  Cadwalader chose ThreeWill based on our experience with SharePoint and working with other law firms.

Learn more about Cadwalader, Wickersham & Taft LLP –

Read more details and purchase the report here –

Contact us today about building an award winning SharePoint initiative for your company.

read more
Danny RyanCadwalader Partners with ThreeWill to Win Best Intranet of 2016

Using ASP.NET vs SharePoint on Projects

Tim is a Senior Consultant at ThreeWill. He has 15 years of consulting experience designing and developing browser-based solutions using Microsoft technologies. Experience over the last 8 years has focused on the design and implementation of SharePoint Intranets, Extranets and Public Sites.

Danny Ryan:Hello and welcome to the ThreeWill podcast. This is your host, Danny Ryan and today I have Mr. Tim Coalson here with me, the famous or infamous Tim Coalson here with me. Welcome Tim.


Tim Coalson:Thank you Danny. I think infamous is probably most appropriate.


Danny Ryan:For this podcast what we’re going to do is we’re going to follow up with one that we did yesterday with Mathew, since you’re working with Mathew. Yes?


Tim Coalson:Yep. Working with Mathew.


Danny Ryan:Awesome. In fact we brought that up yesterday during the podcast, which I’m sure you’ve listened to, right, Tim?


Tim Coalson:What podcast?


Danny Ryan:It was a podcast about the project that you and Mathew are in and on right now and we actually brought you up in the end and we had some nice things to say about you. Can you believe that?


Tim Coalson:It’s hard to believe but I will have to say that my customers apparently listened to that podcast and brought it up on one of our calls today.


Danny Ryan:We didn’t say anything negative about you Tim. For some reason, I guess it’s your great personality, you tend to take the jokes really well and put out the jokes really well around the office. Sure.


Tim Coalson:Yeah.


Danny Ryan:Awkward silence. Quite. Yes? Today, our topic. Since Mathew already stole the thunder with what’s going on with the project that you guys are working, we did a followup with him for folks who may have not heard that specific episode, it’s on a public facing site. Is that correct?


Tim Coalson:That’s right. A support site for tax and accounting software.


Danny Ryan:Excellent. A lot of our projects are using SharePoint for intranets, extranets, and then with these public facing site, we pointed this out with Mathew as well is that we’re using for this site for the web technology. Correct?


Tim Coalson:Right. In this case it’s a site that’s been out there a while. We were brought in primarily to do a rebranding of the site but over time we are starting to expand the site, to leverage some more current, I guess, back end systems. For example, now we’re changing the site and ya’ll probably talked about this yesterday, to integrate with Salesforce on the back end for case content as well as knowledge based content. We’re moving from integration with some homegrown systems that have been developed in-house to now using more standard systems like Salesforce.


Danny Ryan:The question I wanted to get to in this episode was, you’ve been our go to SharePoint front end guy for quite a while. I know you’re not into the graphic design but more into implementing it on SharePoint, but I wanted to get your thoughts on the differences between using versus using SharePoint on projects. It doesn’t have to be an expansive list, just some initial thoughts. It could be pros or cons about using versus SharePoint.


Tim Coalson:It’s interesting, with SharePoint, especially in large corporations or maybe even not even large, but corporations that already have a SharePoint presence, SharePoint as a corporate asset. One of the things about working on projects, usually we’re brought in by the business. We can focus on the business problems, coming up with a good business solution, and with a SharePoint infrastructure already in place we don’t have to worry about a lot of the logistics that we do in non SharePoint projects. For example, acquiring IIS front end web servers, worrying about a database back end. With a SharePoint infrastructure already in place, a lot of the logistics, a lot of the networking things that have to be thought about for a non SharePoint site, a lot of those have already been taken care of by the time we come in, because there’s already a SharePoint infrastructure in place.


Then, our time and energy is spent on providing a customer solution, working with the customers, understanding what the problem is, coming up with the appropriate list and other SharePoint configurations, workflows, to help solve that problem. With, of course the advantage to that is you’re not constrained by some of the constraints that SharePoint would put on you. SharePoint, especially Office365, some of the customizations are generally, don’t want you doing a lot of heady customization of the UI, because Office365 is a ever evolving platform. They’re continuing to roll out new features, so they don’t always guarantee from one day to the next that everything’s going to be the same. With for example, you’re in full control of everything that you do. Therefore you can come up with a more creative UI, use some of the more modern Java Script libraries to integrate. Even though you can use those with SharePoint, you’re not constrained by using a cloud platform that you don’t control. You have a lot more creativity that you can bring to the table.


Danny Ryan:Nice. It sounds like what I’m hearing you say is with SharePoint we end up being able to focus more on the business problem or the solution that we’re trying to create as opposed to, it sounds like with something where you’re starting from the ground up with, you’re having to put a lot of that infrastructure that’s typically already in place for the project.


Tim Coalson:Right. In some cases some of these companies already have that infrastructure in place so you’re possibly building on existing platform, IAS web servers, single server databases. In some cases a lot of that infrastructure may already be in place even for an solution. It depends on where they’re at. If you’re going to reuse existing infrastructure then you don’t have to spend and energy on that.


Danny Ryan:Mathew and I talked about, the process doesn’t change here. We’re still using scrum, we’re still doing sprints. Anything from your standpoint as far as the user interface, as far as mocking things up and things like that. Are you working with their graphics department? How are you working together with someone to produce out the screens?


Tim Coalson:Our initial work was a rebranding which we’ve rolled out that rebranding to production, now we’ve moved on from that to an integration but in the original rebranding we did bring in our graphic designer, one that we work with a lot, who has a lot of great experience building a lot of public sits. We came up with a lot of concepts. We looked around at some of the leading sites. Your Apple, your Google.coms and tried Linkedin as well, to try to leverage what are some of the more common metaphors that are being used on websites for notifications, for example, breaking new on CNN. We wanted to leverage that type of concept on our site so that when there was something important that we wanted to communicate to users, that we would have that banner across the top in red that would get their attention, but we would also allow them to be able to acknowledge that notification and then they would reclaim that real estate in UI.


We leveraged a designer to help us go through. We created various screen mocks and ran those by our customers, got feedback, made modifications and then also in this case, we had to work against corporate standards that had already been defined. They actually had a branding website that had a lot of details, color palettes and even more detailed design specifications that we had to adhere to. In this case it was bringing both our creativity but also leveraging their corporate branding assets.


Danny Ryan:What’s been the big difference from moving where you’ve been doing more about front end rebranding to more of an complex integrations on the back end? What’s been the primary difference? Has it been more communication or is it less communication? What sort of differences that you see as you move more into integration typed work?


Tim Coalson:It’s involved a lot of communications. Essentially there’s three teams. There’s the support site team, then we have a enterprise service bus team. They’re developing the services that we consume and then of course on the back end there was actually a group writing apex code in Salesforce who read and write data into Salesforce itself. Really trying to make sure from a interface perspective that we’re all in agreement as to here’s what the interface is and then as changes are made in each of the different levels, making sure that we’re all in sync in terms of the timing of those, so that all of sudden things don’t quite working.


Really a lot of communications that’s necessary. Then, even beyond the interface itself, coming to a common understanding about, from a business perspective, what is their requirements on the back end and making sure that flows all the way through. For example, today we were talking about dates. Salesforce stores dates in a UTC format. Part of our discussion was, how do we want to deal with those dates on the front end website? Do we want to convert to some common date that would be an offset of the UTC or do we want to have more of a localized date so that based on each user’s locations we would show that date for that person? Things like that have part of that conversation.


Danny Ryan:You’re focusing in on the integration. The site’s live. I found that out from Mathew. What’s the next couple of months look like for you?


Tim Coalson:Right now we’re integrating with cases in Salesforce, then we’ve got a second phase that will integrate with knowledge based content. Our knowledge based content will now come from Salesforce. Some of the next phases include some enhancements to the functionality today. Today there are certain payment options that a customer can go in, they can sign into the site, then they can set up different payment options. In the future we’re going to expand those options to include more options to pay, credit card typed payments. Be able to do monthly payments, things like that. We’re going to expand some of the user options to make it a more customer friendly site to give them the most flexibility and to allow them to be able to do that through an online instead of having to make a call into a call center.


Danny Ryan:Nice. We’re over ten minutes, Tim. Wasn’t that quick? That was painless, right?


Tim Coalson:Time flies.


Danny Ryan:Do you want to talk about the client is or how great Mathew is? Or, who do you want to talk about how great? Or how great I am, how about that?


Tim Coalson:Yeah. Obviously. We do have a good team. We do have a good customer. That’s certainly a big one. You are viewed as a partnership where your customer trusts you that you’re going to make good decisions, and you trust your customer. It does make for a much better working relationship. We have fun on the project. It’s a much better experience and I think the customer gets more out of it, we get more out of it. It’s all around a good relationship.


Danny Ryan:That’s awesome. Thank you for taking the time to do this, Tim.


Tim Coalson:Thank you.


Danny Ryan:I’ll see you in three months, then?


Tim Coalson:It’ll fly.


Danny Ryan:It will fly by and thank you everybody for taking the time to listen. Please drop by and have a wonderful day. Thank you so much. Bye bye.


read more
Tim CoalsonUsing ASP.NET vs SharePoint on Projects

Integrating with the Salesforce Service Cloud

Matthew Chestnut is a Senior Consultant at ThreeWill. He has over 20 years of software development experience around enterprise and departmental business productivity applications. He has a proven track record of quality software development, on-budget project management and management of successful software development teams.

Danny:Hello and welcome to the ThreeWill podcast. This is your host Danny Ryan, and today I have Matthew Chestnut here with me. Matthew, thank you for joining me.


Matthew:I’m back again.


Danny:It must be another quarter.




Danny:It’s another quarter. No blog post, but you want to come in here and spend some special time with the one that you love, right?


Matthew:I’m guaranteed to speak with you at least four times a year.


Danny:I appreciate you taking the time to do this. I think for today I wanted just to get, and this may be a combination of both technology and process and just getting up-to-date with what you’ve been working on the last couple of months. Do you mind just going through at a high level telling me more about this? I know it’s a large multi-country, multibillion-dollar information services company that you’re working with. Can you give me a little bit of a background on what you’re doing with that company?


Matthew:Certainly. We’ve been working with this project for approximately nine months, I’m guessing.




Matthew:It’s gotten very exciting. We have rolled out the basic, or I should say updated, support site worldwide, and that’s went really well. Now, we’re starting on a new piece of the deployment where the support cases are being migrated from a legacy in-house system to a Salesforce Service Cloud implementation. What’s interesting about that is because the company wants to manage all these customers, they’ve got a variety of customers and a variety of products, variety of geographic locations, and a variety of call centers that support these customers, they wanted to do a managed roll-out, if you you will.




Matthew:That really fit in very nicely with Agile. Here at ThreeWill, we follow an Agile methodology for the work that we do where we breakdown the various backlog items, the use cases, the information that the customer wants, we break those into stories. This is a story on a bigger macroscale, if you will, where the story is let’s roll out this information, this customer support site to this particular geographic region now, and then in a few weeks or a few months we’ll do the next set of companies, products, what have you.


Where we’re at now is we’ve got this Service Cloud implementation, it’s a Salesforce Service Cloud is their case management piece, and it’s being rolled out globally for their internal people, but they also want to be able to pick up some of these external customers. Their customers want to be able to create support tickets like they’ve always done. Behind the scenes, we’re providing a user interface that to the external user it looks no different than what they’re used to seeing, but internally that’s where all the magic happens.


What we’ve got going on is we’ve got a group of customers based on how they’re identified, how their user profile on the website is configured, and they end up going into Service Cloud so that the call center people can look at the data directly through their Salesforce Service Cloud log ins. There’s also another group of people inside of the company, typically the sales group, who want to check the pulse of a customer before they call on them or find out what’s going on. They need visibility into these tickets as well.


Danny:How good is this meeting going to go?


Matthew:Yeah, they want to know.


Danny:Yes, yes. Understand.


Matthew:They don’t want to get sidetracked or …




Matthew:Surprised. Exactly.


There is URLs that they were adding to their instances of Salesforce, because once again being a global information services company they have a variety of instances of Salesforce. One nice thing about Salesforce, you don’t have to do it one big bang, you can do it into groups as well. What the sales group would do is they would click on a link, it would open up a window in their browser, and it would show them all the open support cases or support cases for the last X number of days. The whole thing is they want to be able to give their customers access to support just like they always have, but they want it in the new modern technology, Salesforce Service Cloud, and they want to move away from the legacy support system for a certain class of users.


Some other technology things that we’re dealing with is, Salesforce has a variety of ways to interface, we are interfacing with some enterprise services, some web communication foundation, WCF Web Services, that are being hosted in IBMs enterprise service bus.




Matthew:Another group is providing that API, and what we did as the website developers is we took the existing webpages and we basically modified the direct cause to a database to use these enterprise service bus web services where appropriate. Based on the routing, we call it routing, which service do we go to, do we go to the new, or do we go to the old. Based on certain criteria, we are able to route the tickets to Salesforce Service Cloud through this new SB, or we go to the legacy system. It’s seamless to the end user.


Danny:Nice, nice. I think what’s interesting about this project is that, yes, we’re doing things with Salesforce, but I don’t know since the get-go whether we’ve been doing that or not, but the site itself we’re not using SharePoint, we’re using Is that correct?


Matthew:That’s correct.


Danny:Okay. We’re leaning back on our original days of learning a lot about ASP. It sounds like there’s a lot of things that are a part of this site that lend itself to things that we’ve done before in SharePoint, like workflows and maybe stuff like that. How is our background in SharePoint helped us with this project?


Matthew:SharePoint in some ways of looking at it is a database. You have lists and you have views, and those are very database-centric is how we look at them. What we’re dealing with here now in this particular website are database tables and database views, so all of our SharePoint expertise, even in the modern technologies that we’re doing with Angular, etc., talking with SharePoint 2013 and beyond, those lend themselves directly to it. It’s actually nice because we as SharePoint developers understand the SharePoint object model. We know how to get data out of a list. We certainly understand the Sequel Server and Oracle and all these other databases that we’re using currently. We know how to get data out of a list. Once again, in this new project we’re doing for this particular customer, we’re using web service calls. In a lot of ways, that’s how SharePoint works, in some of their remote access to SharePoint is done through services. It really lends itself very well.


Danny:Has anything come up yet with regards to customers being able to do this through a mobile device or anything along those lines at all?


Matthew:Some of the pieces of this website are done in a responsive manner where depending on the viewport, the size of the device, the user interface changes, but only certain parts. We are expanding that. It’s interesting, when we talk to the customer about that and ask our customer about their customers and their user profiles, etc. and what kind of person uses this, they said tablet viewing is a maybe, but phone not really. The type of customers they’re dealing with are business professionals that aren’t really doing stuff mobile-centric, this is data-driven so that it is really more important for them to see it on a browser screen as opposed to a mobile device.


Danny:The things that they’re typically doing on the website are things that they’re doing at a desk?


Matthew:Yeah, it’s accounting things in some regards.


Danny:Yeah. Okay.


Matthew:It’s show me my invoices, show me the orders that I have. It’s the kind of stuff you do at work and you don’t want to take this work home with you, so why put it on your phone.


Danny:Trust me, I do not want to be able to access this from my phone.






Anything else? You were talking about Angular. Are there any of the JavaScript frameworks that you’re using on this project at all or new things that you’re branching out to that you’re introducing into the project?


Matthew:It’s not so much that we’re introducing, we’re sharing some of the same technologies that we are doing with our work in SharePoint 2013 and beyond.




Matthew:Things like React and Bootstrap and Angular. There’re certainly aspects of that that we’re using because we realize, and as everyone knows, the JavaScript world is the thing and various frameworks help with JavaScript, so we’re just leveraging some of those same techniques that we’ve done in our SharePoint work with this. It’s easier in some regards because we are dealing with the database-type things, but it’s only easy in the sense that the data model is set up. SharePoint, out of the box, gives you all of this stuff for this work we’re doing to access Oracle data and Sequel Server data. We are using some standard patterns and practices for that and those had to be configured, whereas with SharePoint they’re just available. It was interesting in that regard. We realize that in some situations SharePoint really jumpstarts you because you don’t have to worry about all this infrastructure, it just works out of the box. We’re taking a step back in some regards, but it does make it easy to deploy. SharePoint, we understand how to deploy. In this world, it’s very similar because it’s all deployed the same way.


Danny:The site is live now, is that correct?


Matthew:Yeah, we went live a couple of weeks ago.




Matthew:It was a very quiet roll-out in the sense that there were no …


Danny:I like those.


Matthew:… no big outages. This is quite a complex system. There’s a number of connections from this software to other pieces within the organization. We had a number of groups working on this, whether it’s in the IT infrastructure, the website support groups worldwide contributing. I would probably guess we had five critical groups all had to come together to make certain that this roll-out worked effectively and correctly. Having the environments with virtual machines internally to do testing, not only development testing but QA, user-acceptance testing, etc., all those pieces that we’re used to doing was made easier because they had the infrastructure in place, and then therefore when we rolled to production it was a nonevent, it just worked.


Danny:Anything you’re looking forward to over the next couple of months on the project?


Matthew:We’re definitely looking forward to this next roll-out, which would be the first official roll-out of the support site talking to Service Cloud. Once we get done with that, we have some more knowledge stuff that we’re going to do inside of Service Cloud as well as some custom work that we’re doing with the existing infrastructure. Really, we have to be very aware of where we are and what we’re trying to do because there’s a variety of connections, there’s a variety of data, we just need to keep track of it. How we do that? We do it with our daily stand-ups, we do it with our issues lists, we do it with the standard stuff regardless of the type of project we’re working on, we do it with tools to help us keep on track.


Danny:In two-week sprints? Is that what you guys have?


Matthew:Yeah, two-week sprints, which is a good rhythm for us. Two weeks, we get with the business owners, we get to do a demonstration, we show them our progress. Obviously, we do the stand-ups daily to keep everyone apprised who wants and needs to know, but every two weeks we go in front of our product owner and make them happy.


Danny:You’ve been working a lot with Tim on this project.


Matthew:Our Tim? Oh, absolutely. Tim and I have been working very closely together. We give Tim a hard time, but he’s doing a great job with the pieces he’s doing. He’s very conscientious.


Danny:Yes. Good.


Matthew:He’s very aware of what the customer wants and needs, and of course he loves to talk, so he never minds calling somebody to talk to them for hours at a time for something that would take me perhaps 10 minutes. He just loves to talk.


Danny:That’s great. Yeah, it’s going to be fun working with Tim. That’s great to hear.


Thank you for taking the time off of your project to do this. What, I’ll see you in three months? Is that case?


Matthew:I have a feeling we may run into each other sooner than that.


Danny:Matthew and I work side by side. We’re across a wall from each other, so we see each other quite often. I appreciate getting to spend this time with you, Matthew. I appreciate the update on the project. Sounds like you’re doing wonderful stuff. Thank you so much.


Matthew:Yeah, we’re excited about it. We’re making this customer happy. It’s interesting, this started out as a 90-day let’s get the website rebranded, and it’s just grown from there. I think it just shows the trust that our customers have in us and we like to maintain that trust.


Danny:That’s awesome. Thank you so much.


Thank you everybody for listening. Please drop by, and have a wonderful day. Take care. Bye-bye.


read more
Matthew ChestnutIntegrating with the Salesforce Service Cloud