SharePoint and Office 365 Saturday Charlotte–August 2019

We held another successful SharePoint (and Office 365) Saturday in Charlotte yesterday (August 10, 2019).  Great turnout for attendees, speakers, and sponsors.


I presented an updated version of the talk that I’ve delivered the last few years at conferences and user groups:

How Atrium Health SharePoint Team Manages Office 365

Atrium Health (formerly Carolinas HealthCare System) is one of the largest non-profit healthcare systems in the US, with over 60,000 employees. Starting in 2013, Atrium migrated Exchange and SharePoint to Office 365, which has introduced changes for both end users and the IT department. This session will cover how the Atrium Health SharePoint team manages and governs the collaboration workloads in Office 365 (SharePoint, OneDrive, Yammer, Office 365 Groups, Teams, Etc.). Attendees will walk away from this session with both specific governance tactics they can implement, as well as, the reasoning behind them.

SharePoint Saturday Charlotte 2018!

For some reason, I never published this blog post after drafting it last year!

I had a great time helping organize, and then speaking and attending the latest SharePoint Saturday in Charlotte, which was this past Saturday (8/11/2018).

I’ve attended every SharePoint Saturday in Charlotte since 2010.  In fact, the one in 2010 was my first SharePoint Saturday ever, and was even while we still lived in Columbus, OH (we moved to Charlotte later that year). SharePoint Saturdays in 2010, 2011, and 2013 had more than 200 people attend (I IMG_20180811_070704 (2)think), but then we saw it drop off, hitting a low of only 60 people in 2015.  That’s the first year we held it at UNCC Center City, but I don’t blame the venue change.

Those years were a little rough in the SharePoint community as we all wondered what Microsoft was doing – they named SharePoint as simply “sites” in Office 365 and people wondered if SharePoint 2013 was the last on premise version.  That all changed with the return of Jeff Teper and Microsoft’s renewed interest in SharePoint.

Attendance has steadily rebounded and this year we had more than 180 people attend! We’ve focused on having excellent keynote speakers, including three from the SharePoint product group at Microsoft (Chris McNulty, Bill Baer, and Naomi Moneypenny).  Andrew Connell did an excellent job as well for 2017.

Photos from this year

Here’s a few from the keynote(s).  We had one to start the day, and another to start the afternoon!



This is the vendor booth area:


And then we ended the day with giveaways:


Cloud Friday Nashville–May 2018

I had the good fortune to attend, and speak at, Cloud Friday Nashville on May 4th, 2018.  It was a great event and I hope to attend next year as well.

Here’s my presentation:

How Atrium Health Implemented and Governs Office 365

Atrium Health (formerly Carolinas HealthCare System) is one of the largest non-profit healthcare systems in the US, with over 60,000 employees. In the last five years, Atrium has upgraded Exchange and SharePoint to Office 365, which has introduced changes for both end users and the IT department. This session will cover the upgrade / migration, how governance changed, and what operational changes have occurred along the way. Attendees will walk away from this session with both specific governance tactics they can implement, as well as, the reasoning behind them.

Slide deck: PDF copy

Slide deck: PowerPoint copy (also displayed below)

SharePoint Saturday Charlotte–2017 Edition

Another SharePoint Saturday Charlotte happened yesterday (8/26/2017) and, IMHO, it was a great event.  Thank you goes out to all of the speakers, sponsors, and event organizers!  A lot of behind the scenes work went into pulling it off.

As promised to those who attended my session…

How Office 365 has transformed Carolinas HealthCare System

Level: 200

Track: IT Pro, Business

Carolinas HealthCare System (CHS) is one of the largest non-profit healthcare systems in the US, with over 60,000 employees. In the last four years, CHS has upgraded Exchange and SharePoint to Office 365, which has introduced changes for both end users and the IT department. This session will cover the CHS upgrade / migration, how governance changed, and what operational changes have occurred along the way. Attendees will walk away from this session with both specific governance tactics they can implement, as well as, the reasoning behind them.

…here’s my PowerPoint slide deck.  I had way too much content, and will be reorganizing/focusing this presentation for the next conference I’m delivering it, the SharePoint Engage Conference in Raleigh.

If anyone has questions about our Office 365 (Exchange / SharePoint Online / OneDrive / Yammer) experience, either around migration or adoption or operations, please feel to reach out to me via Twitter, LinkedIn, or email (

Tech User Groups in the Charlotte NC area

One of the best things you can do for your tech career is to get involved with local user groups.  I’ve been regularly attending some type of user group meetings since the early 2000s.  They’ve all been Microsoft focused: .NET development, Windows Server/Infrastructure, and SharePoint.

We moved to Charlotte almost seven years ago and I sought out the local users groups.  This blog post is to help anyone looking for info about the groups as I did back then.

Why do I attend user groups? Two primary reasons I guess: one, to learn something new.  Even if the topic is something that I consider to be familiar with, I always end up learning something new.  If it is a familiar topic, it’s good to see how others present it for the times that I need to explain it to others (I attended a OneNote presentation that fell into this category).

Second, it’s the networking.  Meeting others in the tech community, hearing what they’re working on, what challenges they’ve run into, is always good to hear.  One additional, huge benefit to the networking is for when it comes time to job search.

Anyway, here’s the list of groups that I know in the area:

Charlotte Area SharePoint User Group (CASUG) – Meets on the 3rd Thursday of each month at the Charlotte Microsoft offices. This group also  After attending for a few years, I volunteered to help organize it, so I’m a little partial to this group.

Enterprise Developers Guild – Meets on the 4th Tuesday of each month at the Charlotte Microsoft offices. This is one of the strongest groups in Charlotte, with good leadership and attendance.

Carolina IT Pro Group (CITPG) – Meets on the 3rd Monday of each month, most recently at the Charlotte Microsoft offices. This is one of the oldest groups in Charlotte (from what I understand) and has a little different meeting format than the others. 

Charlotte Office 365 User Group (MeetUp or Facebook) – A relatively new group that meets on the 4th Wednesday of the month, again at Microsoft.  They also started a business user series of meetings that meet during the day (lunch), but I’m not sure what the schedule pattern is for those.

Charlotte PowerShell Users Group – I haven’t attended in a while, but they seem to still be going strong.

Here’s some more, but I’ve never attended:

Charlotte SQL Server User Group

Modern Devs Charlotte (formerly JavaScript devs?)


If you’re familiar with these groups, please feel free to leave feedback in the comments.

Conference season!

I’ve got a couple of couple of busy months coming up – I’m going to be attending one conference and speaking at three others.


SharePoint Saturday Charlotte – Sept. 17, 2016

I attended my first very SharePoint Saturday in 2010, which was in Charlotte, just a couple of months before we moved to Charlotte.  It was a great event and I’ve attended nine SharePoint Saturdays (presented at half of them), so this year’s SharePoint Saturday Charlotte will be my tenth SharePoint Saturday!

Starting last year, I volunteered to help organize it.  I had a sense of how much work these events are to put together after attending and speaking at some, but it wasn’t until I volunteered that I got a much more accurate picture of the huge amount of work they are.  My contribution is minimal compared with the effort others have put in, so this is more a thank you to them than a pat on the back for myself!

This year’s event has a great mix of Microsoft employees, SharePoint MVPs, and local SharePoint experts as speakers.  (Click here to register to attend!)


IgniteLogoMicrosoft Ignite – Atlanta, Sept. 26-30, 2016

Ignite is shaping up to be a huge conference, not only for Microsoft in general, but SharePoint in particular.  I’m really excited that I get to attend.  I got a chance to go to the Microsoft SharePoint Conference 2012 in Las Vegas, which was a big conference, but Ignite is going to have twice the number of attendees.  Plus, I never got to attend TechEd, which Ignite also replaced.

I’m looking to hear what Microsoft says about the future of forms and workflows in SharePoint, in particular, the story about replacing InfoPath and SharePoint Designer workflows.  I think PowerApps and Flows are the answer, but from what little I’ve seen, I don’t think they fully replace those older technologies yet.


The Building a Better Intranet Workshop – Oct. 3-4, 2016

I was invited to speaker a local workshop, as a guest speaker presenting a case study.  It was very cool to be approached to speak.  I think tickets are still available here.


SPEngage-Raleigh-Speaker-Email-SigSharePoint Engage – Raleigh, November 2-3, 2016

I found this conference when I was randomly searching for SharePoint conferences in the area last year.  I submitted to speak on a lark and I was chosen!  Boy am I glad I did.  The two day conference last fall in Raleigh was great – well organized and executed for both speakers and attendees.

I was selected to speak again this year and I’m really looking forward to going back. (Tickets are still available --  click here to find out more info)

Goodbye Windows Mobile/Phone–it’s been a good (not great) 13 years

A few weeks ago I came to a decision that was a long time coming.  I finally decided to dump my beloved Windows Phone by Microsoft in favor of Google’s Android.

First, some history…

I started using Microsoft powered phones something like 13 years ago, when I got an Audiovox Thera.  I went from a simple cell phone (my very first cell phone) to Microsoft phones because the idea that I could use .NET to write an app for the phone was very cool.  (I wrote a post a few years ago about my personal cell phone history: 9 Years of having a cell.) Here’s a quick run down:

1) Verizon feature phone – my first phone and until this year, the last time I had a non Microsoft phone

2) AudioVox Thera – PocketPC for Phone edition – my first Microsoft phone

3) Samsung i730 – Wifi!

4) HTC Touch Pro 2 – Nice keyboard!

5) Nokia Lumia 710 – Windows Phone 7!

6) Nokia Lumia 925 – Windows Phone 8 (then 8.1), great camera – my most expensive cell phone ever

7) Google Nexus 5X – Android!

Plus, my family jumped on the Windows Phone band wagon when I got my wife and both of our kids Lumia 520s.  The 520 was an incredible bargain.  Instead of buying the kids a iPod for music, we got them phones that could do music plus games plus be a phone! AND the 520 was a quarter of the price of the lowest iPod touch – even more of a crazy gap when compared to an iPhone.

So, why? Why not stick with Windows Phone/Mobile?

It simply came down to one thing: apps, or more precisely, the horrendous lack of apps on Windows Phones. Being a long time Windows phone user, I’ve never really had a huge app selection to pick from.  Going from Windows Mobile 6.5 to Windows Phone 7 in 2011, the app selection was much improved, but my basis for comparison was the previous version of Windows Mobile, which had practically no apps.

My perception started to change when I bought an Android tablet for my family (Nexus 7 from 2012) and my daughter got an iPod touch 4th gen (2012).  Apps would come out on iPhone or Android, but only the highest profile apps would make it to Windows Phone.  Somewhere around 2013, the joke started to be that you couldn’t get the name brand app on Windows Phone, but you could get a knock off.  Some of these knock off apps were quite good (Disney Expedition since “My Disney Experience” isn’t available), but others were bad. Sometimes those independent knock off apps would suddenly quit working because the service they were tied to had changed an API.

I tried to make up for the lack of apps by using the web browser in the phone, even going so far as making short cuts to certain sites be a tile on the home page (Facebook being one). However, most of those mobile sites don’t compare with the full app experience.

AND then the next shoe dropped: companies started dropping support for the few apps that they had published.  My LiveStrong app that I used to track my weight daily would no longer sync to the web site.  This was an app that I had purchased (not a freebie) and that company stopped updating it and at some point they updated their web site in a way that broke the Windows Phone app. I also started reading more and more online about banks or other companies dropping their apps as well.  I didn’t use most of them, but I started seeing the writing on the wall.

The next big news was Windows 10 and how it was going to save Windows Phone.  Microsoft has come up with a way to write an app for the full PC version of Windows 10 and have it work on the phone as well.  Great! That’ll close the gap, right? Well….turns out that developers have to write their app in a certain way, plus make additional (Microsoft describes as simple) changes to make it work on the phone.  Even though the changes are simple, companies are still not going to do it.  Plus, most companies don’t put an app out for Windows, instead relying on their full web site (think shopping, banking, etc.).

Windows 10 Mobile has another issue for me: it would require purchasing new phones and none of the Windows 10 phones look that appealing.  And the thought of spending several hundred dollars on a phone that is still lacking apps is crazy.

This whole lack of apps reminds of previous platform switches I’ve done in my life: starting with my very first computer, a Commodore Vic20 (everyone had a Commodore 64), or later having a Tandy Color Computer (loved that thing, but everyone was moving to IBM PCs), and in the 90s I didn’t like Windows 3.1 so I bought a Mac (Perfoma 6116CD running MacOS 7).  The Mac versus Windows debate of the late 90s reminds me a lot of this phone debate.  Mac users (clear minority) would say that they didn’t have a lot of apps, but the apps they had were good.  Now, it’s the Windows Phone crowd saying that.

iPhone or Android?

I’ve been leaning Android for a long time because I like the hardware/price options.  There’s no such thing as a low end iPhone in my opinion.  Buying four iPhones would have given me sticker shock! Plus, Paul Thurrott and Mary Jo Foley, two Microsoft beat reporters that I follow closely via their articles and podcast ( have recently decided to not use Windows Phones as their daily phones. Paul’s published several articles about “Android for the Windows Phone guy” that have been helpful.

I’m still a big Microsoft fan (I make my living supporting SharePoint/OneDrive/Office 365) and Microsoft has been publishing a lot of apps first on Android.  Plus Android being open allows more customizations that I might find useful and will allow me to tinker somewhat with it.  AND with the big news of Microsoft purchasing Xamarin, I can write apps for Android (I haven’t tried this yet, so it’s mostly theory for me…) using Visual Studio and C#.

Paul Thurrott pointed out the Google Fi service, so I looked into it.  I figured if I was going to switch phone platforms, it’s a good opportunity to re-evaluate our cell phone plans as well.  After a lot of research and comparing phone plans, we settled on this:

Nexus 5X and Google Fi: I signed up for Google Fi and got a Nexus 5x through them.  The phone was only $240 and the monthly phone bills are cheap.

Ting for the wife and kids: For now, they are using their Windows Phones until we can replace them with Android phones. I switched them to Ting because our phone usage is pretty moderate. For hardware, my 11 year old son is happy with my hand me down Lumia 925 (big step up from his Lumia 520) and my wife is fine with her 520.  My 14 year old daughter though is quite unhappy with her 520, so she’s probably going to be the next one to get upgraded.  She’s always raving about the iPhone, but when I got my 5x, she said that it was “good enough”.  Then I showed her the finger print reader, the apps, the apps, the apps – and now she wants one instead of an iPhone.

Our T-Mobile phone bill was $120 and we got four lines (unlimited talk/text) and 2.5 high speed data, which is a pretty good price compared with other cell companies.  However, our newly combined Ting and Google Fi service is going to be less than $100/month.  BTW – kudos to T-Mobile for making it extremely easy to move our phones to another provider.  NO hassle what so ever.

We’ll see if our data usage increases with phones that have apps, but our first month is almost over and we’re doing well.

SSD upgrade in a MacBook Pro


I recently upgraded my wife’s MacBook Pro by replacing the original hard drive with an SSD.  The performance improvements were just as good as when I did this same upgrade for Lenovo laptop in the family last fall.

Her MacBook has 8GB RAM, a 2.3 Ghz i7 processor, and a 15” inch screen.  It was a low end MacBook Pro when we purchased it in July 2013.

The SSD was another Crucial drive from NewEgg.


I timed a few operations to see what they were before and after the upgrade:

Before upgrade:

  • Seconds to login prompt 47.8
  • Seconds to login 9.4
  • Seconds to launch safari 13.8
  • Seconds to launch outlook 18.4

After upgrade:

  • Seconds to login prompt 44.6
  • Seconds to login 4.3
  • Seconds to launch safari 2.1
  • Seconds to launch Outlook 2.6

The key measurements for my wife was the amount of time it was taking to launch applications.  I timed Safari and Outlook, since these are her primary apps to use and the results are amazing.  In fact, she laughed at how fast they launched when I first showed her.

File missing in SharePoint Online: MicrosoftAjax.js

One of the consultants working on a project for us recently took a week off.  When he returned, he found that our SharePoint Online sites in our Office 365 Tenant no longer had this file: /_layouts/15/MicrosoftAjax.js . However, he still saw the file on other Office 365 tenants that he had access to.

We promptly opened a ticket with Microsoft Premier support and found out that they removed this file, without notice, because of an update to Excel services:

the microsoftajax.js file was previously used by Excel services a while ago however has  since been removed including all the references to the file. Currently it’s not being used by any real component in SPO

The suggested workaround is this:

we have identified that the, Public CDN Version of the MicrosoftAjax.js Java Script can be found at this location

We were glad they had a work around ready, but this is yet another example of an undocumented change in Office 365.  Luckily for us, our project had not gone live yet, but if it had, or worse, if we had built several solutions referencing this file, we would have had outages to deal with.

UPDATE: 6/24/2015

After writing this blog post and almost closing the ticket, I decided to post the same information on the Office 365 IT Pro Yammer network.  I received a reply from one of the Microsoft PM’s stating that removing this file was a mistake. I then shared that Yammer post with the support engineer and Microsoft restored the file and admitted that removing it was a mistake!

Office 365 Adoption Hurdles: Mass Uploading and Working with Email attachments

I’m the manager of the SharePoint team for a large company, working to roll out Office 365 (SharePoint Online and OneDrive for Business) to our 40,000+ users.  This is a project that was started a little over two years ago and we’re six months into the company wide roll out.

A couple of weeks ago, our CIO challenged our IS department (800+ people) to adopt OneDrive as a replacement for their local home directory (network file share).  There’s been two primary challenges raised by our users: How do I copy/upload lots of files/folders? and how do I work with attachments in Outlook?

How do I copy/upload lots of files and folders?

The straight forward answer to this question is to simply copy your files/folders from your network file share to your local OneDrive folder, and let the OneDrive Sync Client do the work.  Unfortunately, we had to disable file sync in our environment due to the lack of compliance controls (that’s changing, but we’re waiting to re-evaluate this until we see the new sync client due this fall. Check out this Microsoft Ignite session for more info).

So, we turned to the new drag and drop functionality in SharePoint Online and OneDrive.  One problem though: drag and drop uploading only uploads file(s) – it does not work with folders.

imageSince these two options are off the table, that leaves us with one somewhat viable option: Explorer View. Explorer View can be accessed by going to the library tab for any document library and clicking the “Open with Explorer View”.  Microsoft put a minor hurdle in this path by hiding the ribbon by default in OneDrive, as they strive to simplify the OneDrive user experience.

The bigger challenges with Explorer View are this: you must be logged into Office 365 (checking the box for remember me on the Realm Discovery page in ADFS environments), you must be using Internet Explorer, and you must be using a Windows PC.

So why is IE a challenge? WELL, in our environment, IE8 is the standard due to some legacy applications that require it (IE11 compatibility modes do not work – nor do work arounds like Citrix, etc.).  Given IE8 is not supported with Office 365 by Microsoft, we installed Chrome as a secondary browser on all desktops and have been telling our users to use Chrome with Office 365.  This makes our guidance of using Explorer View and IE rather confusing for our users.

How do I save attachments to OneDrive and how do I attach files from OneDrive to an outbound email?

This question comes up quite a lot and the answer requires a few steps.  We have Outlook 2010/2013 deployed, so saving an attachment to OneDrive requires the user to save the file to a local folder (say, the desktop), and then they have to open the browser and upload it.  Normally, a user would simply save the file to the local OneDrive folder, but we’ve disabled the sync client, so the file would never be uploaded.

The reverse is also true.  If someone wants to attach a file to an outbound email, they must first download the file to a local directory, and then attach it to the email.

imageAnother option available to our users is through Outlook Web Access (mail in the browser).  If they use Mail, they can use the Insert menu in the email to attach a file, or better yet a link, to their document. This will avoid having to download the file and potentially losing track of which version of the document they are working on.

As for receiving attachments, Microsoft has announced that this is coming to Outlook Web Access as well, which makes sense.  Once that’s available, our users will be able to save to their OneDrive just as easily as sending from it.

BUT, our users really prefer Outlook over Outlook Web Access, so what about Outlook?

imageI don’t think Microsoft is going to add this capability to Outlook 2013, but it looks like they’ll solve this problem in Outlook 2016. In the screen shot on the left, you can see that an Outlook 2016 email window now has more options on the Insert menu.  Those options list all of my recent files, as well as my cloud locations – OneDrive for Business, SharePoint Online sites, OneDrive Personal, etc.

The Outlook 2016 preview doesn’t have a save to OneDrive option, at least that I could find, but I hope they do include one in the final release.

Paradigm shift

Moving files to OneDrive isn’t just about storage costs savings for us, but also about changing work habits in order to really take advantage of Office 365.  Teaching people how use Explorer View means they will continue to work with their files through the Explorer, much like we’ve done for decades.  We also don’t want to teach people to send attachments, unless there is no other option for sharing files.  We point out how to share files from OneDrive, which allows co-authoring, version control, and much better management options for the document. This is where we’re going to gain efficiencies and really reduce costs.

These questions/challenges are what people will ask when they are mapping their existing work patterns to new technology.  It’s important that we do what we can to ease their transition, but we must be careful not to delay the real gains of Office 365.

SharePoint Saturday Charlotte 2014

A couple of weeks ago, I presented How Carolinas HealthCare System Governs SharePoint at the Charlotte SharePoint Saturday and I had a great time. The people who attended my session asked lots of questions, which always helps. This was my fourth time presenting at a community Saturday event (SPS Charlotte 2013, SPS Richmond 2013, and Carolina Code Camp 2013) and all of them have been well organized and run.

I thought it would be useful to share my team's experience introducing SharePoint governance over the last three years at CHS (Carolinas HealthCare System). We've had some great lessons learned, as well as solid and practical tips for implementing governance in large organizations. Our governance is still a work in progress, but anyone attempting to impose governance should understand that it may take years to get to where you need to be.

For those interested, I've uploaded my slide deck to the site. I've also uploaded my slides to

Upgrading a low end laptop–What a difference an SSD can make!

I upgraded my daughter’s laptop this weekend, with some incredible results.  th

We bought this laptop three years ago for general home use and over time it became my daughter’s.  We only spent $350 on it from Best Buy, where it was one of their back to school summer specials.  For the price, it had decent specs and has proven to be rather solid.  It’s a Lenovo B570 with 4GB ram, Intel Pentium processor, 720p 15” screen, and a 500GB Western Digital Scorpio Blue hard drive.

It’s still running Windows 7 x64 Home Premium.

Since we bought it, I’ve had some experience with machines using solid state drives (SSDs) instead of traditional spinning hard drives.  The price has really come down, so I decided to buy one as an upgrade for this laptop.

20-148-820-TSI bought the replacement drive from Newegg, a 256GB Crucial MX100 SSD.  When deciding on which SSD to get, I looked at only a couple of key specs: capacity, IOPs, price, and name brand.  I knew she’d need at least a 256GB drive, since it would be replacing a 500GB drive.  256 turned out to be plenty, once I cleaned off some the apps and data that had accumulated over the years.

IOPS is the standard for measuring input/output operations per second – the higher the number the better.  I have a Samsung SSD in my home desktop, which had a read speed of 94k IOPS and write of 35k IOPS, and I’ve been happy with it.  The Crucial drive, which is a year newer and has twice the capacity, for the same price as I paid for that Samsung, is rated at 85k IOPS read and 70k IOPS write.

The price was pretty good – Newegg was running a special, so I was able to get it for $99, but the price as I write this is $122.  As I said, I paid around that for a slower drive with half the capacity in 2013.

The last decision point was the name brand.  I wanted one that I had at least heard of, so drives from Samsung, Crucial, or Kingston would have been fine.

One last part I found necessary was a EZ-Connect kit that I picked up from Microcenter the last time I was in one of their stores.  This kit has the cables to connect from USB 2.0 to SATA and IDE drives, as well as providing a power cable.  This allowed me to hook up the new drive to the laptop via USB, and copy the contents of the existing hard drive to the new drive (using Acronis True Image software, which came with the kit or the SSD).  It was all very straight forward.

After I copied/cloned the drive, I powered down the laptop and swapped out the old drive for the new drive.  The Lenovo was pretty simple to open and the hard drive compartment was clearly labeled.

I then booted up the laptop using the new drive.

I timed three things before I swapped the drives, so I could measure the difference:

  • Time from when it is powered on until the Windows login prompt is displayed
  • Time from when I log in until the Windows mouse cursor stops displaying “wait” (aka – spinning wheel)
  • Time when shutting down while logged in

With the old drive, these times were:

  • 42 seconds
  • 36 seconds
  • 45 seconds

With the new drive, these times are now:

  • 20 seconds
  • 10 seconds
  • 15 seconds


That’s better than twice as fast for every measure!! Wow.

I also checked out the Windows Experience Index (Windows 7) and the “Disk data transfer rate” went from a score of 5.7 to 7.9!

With this kind of improvement, I expect this laptop will be very usable for at least another couple of years.

Living without a laptop, Part II, aka: Why I cried uncle

About this time last spring, I wrote how I was going to start Living without a laptop.  I had just switched jobs and had to turn in a good work laptop, which was replaced by a desktop at my new job. After living and working like this for a year, I have finally caved in and ordered a laptop for work.

z400-2So how did I get here? Well, for the last year my main computing devices have been: an HP desktop (z400) at work, a custom built AMD desktop at home, and an original Surface RT tablet.  Whenever I was away from my desk at work, I could use my Surface to keep notes (OneNote – awesome) and also keep up with my Outlook.  I was able to do this because I had my Surface connected to the secure Wi-Fi network at the office.

I also had the option of using Remote Desktop to connect to my office workstation if I needed to do something that WindowsRT couldn’t do.  A lot of this functionality hinged on me being able to connect to the office network.  This all worked until an update to my SurfaceRT in January killed my ability to do just that.

SurfaceRT/WindowsRT has its limitsSurfaceRT

Our private wireless network at the office requires that I enter my username and password, which it still prompts me for after the update, but it also prompts me for a network key which we don’t have and the Surface didn’t require before.  Since there isn’t a big group of us Surface RT users, I fell into the category of unsupported (on your own) users at work.

There is still a guest network that I can use, which allows my Surface to get out the internet, where I store my OneNote notes.  However, I can’t connect using our remote access options, because I can’t install Java for the VPN nor can I get the Citrix Receiver application to work with our Citrix remote option. Without these remote options, I can’t use Outlook and I can’t use Remote Desktop, making my Surface RT rather limited. (For those wondering, I went so far in my troubleshooting that I completely wiped my Surface and reinstalled everything – hoping that it would work like it did before, but I had no luck with that.)

I also found another scenario where the Surface isn’t a laptop replacement – trying to use the keyboard without a proper desk/table available.  I first ran into this when I attended a conference in 2012.  The conference was set up with rows of chairs, but no tables in front of them.  I had the choice of either using the on screen keyboard to take notes (which isn’t a great experience for more than brief notes) or using the keyboard and trying to balance it on my lap. My typing would often make the Surface move/teeter, and the kick stand didn’t make the viewing angle of the screen good, nor did it feel good as it cut into the tops of legs.

This isn’t the only place where a table wasn’t available.  Turns out I missed being able to use the keyboard while seated on our couch in front of the TV.  Most people will say that tablets are great for being in front of the TV. Tablets are great for consuming things, like catching up on Twitter or Facebook, or reading blogs, but I’m just not that productive doing email or development without my keyboard.

To the cloud – new goal at the office

While all of this was happening with my mobile options, the game was also changing when it came to my need for a powerful desktop. One of the reasons I needed this computing power was so I could run a SharePoint development environment.  This included running not only Visual Studio, but also the SharePoint server software which takes gobs of memory and storage. So how did this requirement change? Two new changes we adopted – moving to Office 365 and using Azure as part of our MSDN subscriptions.

First, we’re moving to SharePoint Online and won’t have SharePoint on premise in a few months.  This changes our development to be focused on more wide stream web technologies which don’t require that you develop on a SharePoint server.

Second, Microsoft introduced Azure credits with an MSDN subscription.  I can now use that to spin up virtual machines in Azure for development environments that require I be running on a server, like some SharePoint projects require (maintaining legacy sandbox solutions).  For those that don’t, I can simply use Visual Studio on

After thinking through all of this, I decided to request an Ultrabook laptop for work.  I got a nice little HP Elitebook Folio 9470m, which is pretty slim/small, making it a good note taking device for meetings, but I can also use it to run Outlook and all of our remote access options work.  I also have a docking station and large monitors on my desk, so when I’m there I’m not limited to the smallish screen of the laptop.


I’m still using my home desktop when I’m telecommuting, but if I need to catch up on email, I now have the option of doing so from my couch.

User Profile Web Service error when accessing from InfoPath Forms Services

In the last couple of weeks, we had to move a custom application from one SharePoint 2010 farm to another.  We tested our migration method by moving it to a test farm first, which highlighted a few things that we needed to change, but it was otherwise successful.

However, when we moved it to the new production farm, we ran into an error that we hadn’t seen in test.  It occurred when we opened an InfoPath form that was calling the User Profile web service.  The error presented to the user was a dialog with this: “An entry has been added to the Windows event log of the server. Log ID:7893” .

When we looked it up in SharePoint’s ULS log, we found this entry:


InfoPath Forms Services


Runtime – Data Connection




The following data connection (GetUserProfileByName) has exceeded the maximum configured time limit. This threshold can be configured by using the SPIPFormsService -MaxDataConnectionRoundTrip PowerShell commandlet


Scouring the internet, I found tips that suggested the identity of the application pool for the “SharePoint Web Services Root” should be something other than localservice.  However, I then found a blog post by Spence Harbar stating that it was ok to be localservice.

I also found a tip that suggested increasing the timeout limits on the InfoPath Forms Services. I tried that without luck.

After discounting everything I found online, I went back to my list of differences between our test environment and our production environment.  After hours of combing through service account permissions both in SharePoint and SQL, I finally decided to check the HOSTS file on the SharePoint servers.


Turns out the fix for us was to add an entry to the hosts file that pointed the SharePoint URL to (the loopback address).  We had already configured this for the other three SharePoint web application we had launched.  We had neglected to do this with our new web application, which was only recently put into production.

So, we learned a couple of lessons again:

First – do everything you can to make your test environment mirror your production environment.  I thought our environments were pretty well matched, including having a separate web front end from the app server, a separate SQL server, and even a separate FAST server in test.  The one thing we don’t have is a load balancer with multiple WFEs.

Second – document your processes.  We should have had a checklist to refer to when creating the new web application.

Carolina Code Camp 2013: Introduction to SharePoint Development

I spoke this weekend at the Carolina Code Camp on the CPCC campus here in Charlotte and my topic was an Intro to SharePoint Development for .NET Developers (those that have no knowledge of SharePoint).  It’s a topic that I’ve been talking about often with new and experienced devs alike, who want to know everything from how to set up a development environment to how to start coding and what can SharePoint do.

From my experience, a lot of the intro presentations given focus on writing those first lines of code, which is a great topic – but it’s about two or three steps away from the absolute beginning.  I spoke a little about SharePoint’s version history, my thoughts on setting up an environment, as well as the tools that you use before you open Visual Studio.  I ended with some Visual Studio info and I was hoping to get into code, but I was only able to get through my slides before my hour was up.

As I promised to those in attendance, here’s a link to my slide deck on SkyDrive:

..and here’s a version you view from Slideshare:

It was actually good that I didn’t need to do live demos, because I didn’t have access to any of my normal virtual machines that I use for presentations (see my previous post for details:  I was actually using my Surface RT tablet for the presentation and it worked great. I bought the special mini HDMI to VGA adapter from the Microsoft store here in Charlotte the previous weekend.  I went with the VGA adapter because I knew they had VGA connections at the campsite ( Smile ) but I wasn’t sure that they had HDMI.

I was going to do a demo using CloudShare based VMs, but I had trouble getting onto their WiFi and as I said, I didn’t have time for it anyway.

After my presentation, which was the first one of the day for the SharePoint track (one of five tracks with 60 sessions !), I was able to relax and enjoy the other presentations.  I got to attend four: an Intro to 2013 Apps Dev, a 2013 SP Designer New Features, an Agile Dev with TFS, and 2013 Search Driven UI session.  All of them very good, and all very relevant to what’s going on at the office.  All of those speakers did a great job.