Visual Studio Intellisense for SPServices

Be careful what you ask!

Well, no more than two hours later Daniel had sent me the stub of a vsdoc file for SPServices.

Now I don’t use Visual Studio, but I suppose if you like this kind of hand-holding, Intellisense could be useful. If you’re game, give it a try and let me know how it works out.

jquery.SPServices-2014.02 Intellisense BETA

If you have suggestions, additions, whatever, please send them along. If I get a general thumbs up, I’ll include the vsdoc file with the 2014.02 release, which I’m hoping to get out there in the next few weeks.

 

SPServices in the Office 365 Developer Podcast

Today Randy Drisgill (@drisgill) alerted me to the fact that Jeremy Thake (@jthake) and Steve Walker (@sharepointing) were talking about me in the Office 365 Developer Podcast: Episode 018 with Steve Walker on SharePoint UX developer guidance. While they do indeed say some very nice things about me (those payments to Redmond are working out), there’s actually a *lot* of great material covered in the podcast. If you just want to hear the part about SPServices, it starts around 28:00.

Podcast PlayerIt’s good to hear that Jeremy, Steve, and I think about some things the same way:

  • I’m awesome (just kidding)
  • Everyone loves SPServices, even Steve
  • “The SOAP services are deprecated, but unlikely to go away any time soon” (Jeremy)
  • “Deprecated doesn’t mean you can’t use it; it means [Microsoft] isn’t going to invest in the future and [they] will take it away at some point.” (Steve)
  • “Deprecated means that ‘no engineer is going to touch that’. It’s still running, it’s still in there, but we’re not going to be adding additional methods or functions.” (Jeremy)
  • Changes to the DOM can break SPServices and Microsoft *will* change the DOM on Office365 – expect it
  • Governance for script-based solutions is just as important as for anything else.
  • This stuff isn’t unique to SharePoint and Microsoft. We’d deal with a lot of these things with anyone else’s Web-based software, too.

As far as the deprecation of the SOAP Web Services goes, as far as I can tell, there hasn’t been *any* work done on them since SharePoint 2010 was released. That was way back on May 12, 2010, making it over 4 1/2 years since anyone has messed with them. Effectively, they have been deprecated for that long based on the definitions above. That latter part is one of the reasons the SOAP Web Services are so awesome: since no one messes with them, they are incredibly stable. Also, since they were developed a long time ago, they are pretty darn efficient. (We had to work harder to get more out of with less hardware capability back then.)

Just as with InfoPath, deprecated is not a death knell. With Infopath we *know* that there’s a long, long runway out to 2023 before support stops for it: “the InfoPath 2013 desktop client and InfoPath Forms Services for SharePoint Server 2013 will continue to be supported through 2023 as part of our Lifecycle support policy.” It will have a healthy life for quite a while after that, too, just like Windows XP still does. We don’t know what the runway looks like for the SOAP Web Services, though. That may mean we have more time, but it may mean we have less.

For quite a while now, I’ve advocated offering FaaS – or “Functions as a Service” – to the organization. By adding things like jQuery into the master page and letting citizen developers know about it, you immediately get some accountability and even can start some collaboration around that type of development. I wrote a whole chapter about these ideas last year in the book Black Magic Solutions for White Hat SharePoint. If you’re on premises now, but think you may be moving to Office365 in the future, the more you (an IT person) know about the citizen developer work that drives your business now, the better. The work that those citizen developers do is *so* important – they build what the organization truly needs and they are unsung heroes.

Some things I am not on the same page with Jeremy and Steve on:

“Don’t use our DOM as an API” – This would be fine if there were good ways to alter the DOM via a “real” API. Maybe that’s coming and maybe it isn’t. Until it does, we don’t really have much choice if we want to extend (or fix) things in places like the default list forms, which so many of the SPServices value-added functions provide.

The rules aren’t back and white. Much of the messaging from Microsoft centers around SharePoint Online and Office365, as if on premises installations don’t even exist. If you’re running things on premises, the same things won’t happen to you at such a rapid pace, the pace driven by the regular updates to Office365. You have control , so you can make different decisions. I know that the podcast is “Office365 Developer…” but many people think of messages from Redmond as applying to everything. It’s all nuances.

I’m probably more concerned about all the existing code out there that uses SPServices on top of the SOAP Web Services than the services themselves. I’ve been promising Scot Hiller (@scothillier) a series of articles on this for ITUnity for months, but I just can’t seem to get it done. Watch for some material from me about it, though. I want to help you move from SOAP to REST in an organized and productive way. You will have to do it sooner or later. Preparing for that eventuality will help to address the concerns that Steve and Jeremy expressed in the podcast.

And thanks again for the kind words and support, guys.

OneDrive for Business Sync App – Sync Issues Guide

OneDrive-LogoI’ll be the first one to admit that I’ve had massive problems with syncing in both OneDrive for Business and OneDrive (Personal). (The branding on this drive me nuts, too, but that’s a different post.)

Yesterday I learned of a page on the Microsoft site that takes you through problem-solving steps to fix (hopefully) your sync issues with OneDrive for Business. I’ve heard from Microsoft that “The highest priority is sync reliability and performance. We need to get this right.” Until they get some of the issues sorted, this trouble-shooting guide may well get you out of the woods.

I ran through the trouble-shooting steps yesterday, which led me to perform all of the steps through “Stop and re-sync your libraries”. Once I’d done that, I saw the glorious green check mark in the image below. I didn’t even know that check mark existed! I’d been stuck with over 500 “sync issues” for months.

2014-10-16_21-37-10

I think we should publicize the crap out of that link. While few people should really have to need these steps, they help to solve issues with OneDrive for Business.

Another thing I learned about is how to find out what version of the OneDrive for Business sync client you are running. In case you didn’t know, it’s actually the old Groove client running under the covers. In some cases, automatic updating of the client has been stuck. See the knowledge base article Some versions of the OneDrive desktop app for Windows do not update automatically (KB2990967) for details.

If you want to figure out what your current version of the sync client is, follow these steps:

For OneDrive for Business the sync client filename is groove.exe. Search for this file on your PC.
If you installed Office through an MSI the groove.exe file typically resides in\Program Files\Microsoft Office\Office15
If you installed Office or the sync client standalone through click-to-run then groove.exe typically resides in \Program Files\Microsoft Office 15\root\Office15

My Groove.exe file is in the latter location:

Groove.exe

Right click on the Groove.exe, go to Properties, and you’ll see the current version under the Details tab:

Groove.exe version

My version is 15.0.4659.1000 as of this writing, as shown above, because I’ve just updated to the most recent version. You can always check for the latest version of Office on the Microsoft Office 2013 Click-to-Run virtualization page. It will explicitly state in the page “The most recent Click-to-Run release is version 15.X.XXXX.XXXX”.

If you’re running an old version of the sync client and you’re able to do an update, you’ll be in better shape, as improvements are rolling out regularly.

I see great promise for OneDrive (both flavors) as they become more and more integrated into the whole Office story. As my friend Jeff Shuey (@jshuey) is always saying “I want to believe!” Keeping up with the updates for OneDrive can help make that promise a reality.

Removing Trovi Search Malware

I had another Minecraft-related malware infection today (not my first). One of my hopes with Microsoft buying Minecraft is that they will clean up the installation and run process overall, including creating a good, clean catalog of mods.

This time we ended up with the Trovi “search experience”. I figured out that it was there plugging things up the first time I searched after installing the latest Dalek mod (yeah, that mess of a page is actually the “official” download page). It became clear that it was more insidious, though, when I realized that many AJAX-driven capabilities on pages in Yammer and Hootsuite weren’t working.

When I searched for the tricks to remove Trovi, I got many, many pages that suggested using all sorts of other malware-like tools to remove Trovi.

While I’m enough of a dummy to get infected with Trovi in the first place, I’m not dumb enough to install other junk which would make it worse.

On a whim, I decided to look at the add-on info in Internet Explorer. Lo and behold, there was a link to the “company’s” Web site. Even more amazing, there was a link right at the bottom of the page to a page with Uninstall instructions. It was downright easy to do once I realized that the program was listed as “Search Protect” in the Windows Control Panel Uninstall Programs list.

This is a case where the suggested treatments were actually worse than the disease. Don’t ever download more junk to fix something unless you really know what that junk really does.

 

 

Requesting Your SharePoint “UI Hacks”

I am putting together a presentation talking about UI hacks that we all need to do in order to accomplish everyday UI customizations that our customers – internal  or external – require. For this one I want to limit it to SharePoint 2013 and/or SharePoint Online (Office365). Another way to think of it is how and why we brand SharePoint today on premises and in the cloud; not just things that people want cosmetically, necessarily, but stuff that is hard to do and must be done.

I’d like to collect ideas from all of you out there, which I will collate into some slides (with credit given, of course!). I posted a quick tweet about this and already got a few replies, so I figured a blog post would be a good way to gather information as well.

In thinking about this, I’ve come up with some broad buckets:

  • Inconsistencies
  • Documentation Gaps
  • Document Object Model (DOM) Changes
  • Missing Functionality (Oft Requested)

I’ve already got a few items of my own in each of those categories, but I’d like the presentation to be representative of what we all have to deal with, not just me. If you think I’m missing a bucket, let me know your ideas on that, too.

Let’s use this post’s comments to capture as much as possible. If you’d rather email me directly, you can use the Contact form. When I have a decent amount of content collected, I’ll come up with a way to share it on some level. (The actual purpose of this is classified.)

Thanks for your help on this.