Thursday, December 31, 2015

A quick look back at 2015 – and what lies ahead in 2016

I thought I’d for once take a look at which of my posts for the past year has been views the most. Here’s a pick of five out of the 70 I managed to write – and thanks to all who appreciate me doing this!
In addition to writing posts I also spoke at a few events, most notably Microsoft Ignite, which also was the most fun event in a way. I’m the “Battle of the graph” session was the only one at Ignite without a single slide, and the only one where a dude on stage was wearing a black hooded cape (me). But I did manage to get CollaboGraph app out of it.

So what’s next for 2016? Blogging wise we’ll see, but doing search relevance tuning seems like a topic. Speaking wise my only plan is to say something at the Arctic SharePoint Challenge in February, which I’m part of organizing. But I’m sure something pops up.

As for Office 365 and SharePoint I think it’s moving in the right direction, and the end of the year yielded some good discussions with fellow MVP’s at the MVP summit. Mix that with recent posts by Microsoft and I’m sure 2016 will be awesome.

At the end of the year Puzzlepart was bought by Crayon, certainly an opportunity for creating something interesting in the Office 365 space. Hopefully Puzzlepart’s and my own enthusiasm will rub off for some customers out there :-)

Wednesday, December 9, 2015

My stance on modifying the out of the box display templates

My colleague Petter had a request from a customer to open search results in a new window/tab instead of the same one. So he conferred the braintrust at Puzzlepart on which approach he should go for.

One answers was to modify the control template and loop though all links using JavaScript and add the target=”_blank” attribute. Another to hook in a custom action to which registered a javascript which filtered on click events and did the same modification sort of.

Personally I went against what I always preach which is to never modify the OOB display templates. The customer in this case was using the oob templates, and all the oob item templates through inception reference Item_CommonItem_Body.html/js. We’re talking around 30 result types, referencing some oob template which again reference Item_CommonItem_Body.

To me modifying one line in that file to open the item in a new tab/window had the least complexity. Creating or modifying a custom control template would possibly have required reconfiguration of X pages in the search center. The custom action would have solved it all, but a solution hidden away of sorts.

When is it not ok to modify the OOB templates then?

Most modifications I come across involve adding a new managed property into the template to be displayed. Try this with an OOB template and you fail pure and simple. It just doesn’t work as you won’t be able to Update the result type binding to include your custom managed properties. For this scenario you must create a copy and tie it to your own result type.

And this is where we usually start at Puzzlepart. We have custom templates from the get-go and ready configurations for the 30 result types to be replaced. Petter’s customer already had a search solution up and running when he came in to make it rock, but rolling new display templates were not in scope.

So…. should you or should you not modify the OOB display templates? As a general rule, don’t do it, but if you know what you are doing and know the reasons why, there are scenarios which justify this. Another is to edit the default refiner template and turn on refiner counts.

And as my colleague Tarjei pointed out, if you do change the oob ones, remember that you might miss out on some awesome cool changes coming in a CU near you... or not ;-) - the reason being you have ghosted the files so it won't use possible awesomeness deployed in the 15 hive - or not ;-)

Monday, December 7, 2015

FindTime–A really awesome schedule plugin for Outlook

Microsoft has an internal initiative named Microsoft Garage projects where employees from all over Microsoft turn great ideas into real projects. One of the most recent projects to come out of this initiative is called FindTime, announced on the Office blog, an Outlook plugin which lets you schedule meetings with colleagues – but with polling functionality like Doodle. Or much like the Sunrise app on the iPhone. The FindTime add-in works with Outlook 2013, Outlook 2016 and with Outlook Web Access.

It’s real simple. Start a new e-mail, add people to the To or Cc fields, and you will see their availability in the plugin. In the image below you see I have chosen three possible time slots for a 30 minute meeting with my colleagues, Mads, Elsa and Thomas.