Friday 19 September 2014

TechEd NZ 2014 - Making better use of SharePoint 2013 Search

Making better use of SharePoint 2013 Search

One of the most interesting sessions about SharePoint was the session from Alan Marshall, OFC218: Making better use of SharePoint 2013 Search. The biggest complaint from users regarding SharePoint Search is: "I can't find anything".
This is not a user's fault, it's just because SharePoint Search is mostly forgotten in SharePoint implementations. "It's an out-of-the-box functionality, right? So we don't need to do anything about it!". That is wrong. Yes, it's available OOTB, but it needs configuration. 
Compare this to Google and Bing: They are working with a bunch of people on improving the search experience, every day. The same should happen in any SharePoint platform that is using search, otherwise people won't be able to find what they're looking for.

Query rules and Display Templates

Configuring search is a very broad topic. This session was focusing on query rules and display templates. So, nothing about Content Sources, search ranking, query impact rules, etc., but that was fine. Query rules and display templates are new in SharePoint 2013. Display templates are driven by HTML, so no more XSLT! Yeah!

Query rules

Query rules define the rules that need to be applied to the query entered by the user. Some examples:
- Acting on user intent: If a user enters "My Presentations", by default results are displayed with the text "my presentations". Most likely the user would expect to see only his presentation. This can be achieved using a query rule, this rule detect the word "my", and modify the query such that the final query will be "AUTHOR:current_user presentations".
- User centric rules: Query rules can influence the search results by injecting user's profile details. For example, if a user entered "SharePoint" as it's interest, a query rule can fire when the user searches for "SharePoint" to e.g. display other people with the same interest.
- Apply different templates: It is possible to apply a different template, based on the query or the dataset queried. For example, search results from an external datasource are by default not formatted user friendly. Query rules can be configured for that datasource to apply a different template.

Display templates

Display templates drive the HTML rendering of the refinement panel, search item results and when hovering over search item results. When a display template is saved to SharePoint, a JavaScript file is generated. It is possible to change this JavaScript template if you are a die-hard, but whenever you save the HTML file, your changes are lost. In most scenarios changing the HTML only is sufficient.

Some examples from the presentation:


On the left side, a custom item template is displayed. The default item template is like the results in BING, this is not suitable to display items with custom metadata, like a person details. 
On the right side, a custom hover template is showing a map, retrieving its data from the hovered item.

As said, display templates can also be used to customise the refinement panel:
By default, the refinement is text based for most of the fields, a slider is used for a date time field. The default text based template uses counters to display the number of results, using above custom refinement template that can be visualised.

Summary 
SharePoint Search is a rich feature, but it needs some attention. It does a great job out-of-the-box, but it definetely needs tweaking and customisation. Query rules and display templates are a powerful way to achieve this, and it's also available to site owners!

References


Friday 12 September 2014

TechEd NZ 2014

TechEd NZ 2014 is over! This year was my first time at TechEd New Zealand and I really enjoyed it! We recently moved to New Zealand from The Netherlands and together with a bunch of colleagues from Datacom Wellington we visited TechEd. It was an amazing experience, I'll try to write a blog post on the interesting sessions I attended.

Azure, Office 365, cross platform and open source
The key topics of this TechEd were in my opinion: Azure, Office 365, cross platform and open source. The bags given away at registration had "Microsoft Azure" on it, in every session Azure was mentioned as THE hosting option. From Azure Websites to Intelligent Systems Services (ISS, not to confuse with the space station...), from SQL in the cloud to creating VM's based on Linux, Windows Server, etc.

Every major server Office product of Microsoft (Dynamics CRM, SharePoint, Project Server, etc.) is available in Office 365 and a lot of sessions discussed creation of applications in Office 365, how to migrate to Office 365 and how to integrate Office 365 with on-premises software.

Microsoft has moved away from "Microsoft only" and more towards cross platform and open source. ASP.NET vNext is open source and can be hosted on Linux and Mac OS X, Cordova (the platform to create mobile applications cross platform) is integrated with Visual Studio and as said before, Azure supports creation of Linux VM's using built-in templates!

Data
According to James Whittaker (what an amazing, enjoyable speaker!!) data is the new oil. Think about the success of Facebook and Google, it's all about the data they possess and are selling to advertisers. They earn lots and lots of money with your data and this will only increase the next years. Data will become more and more important, not only "created" by us using "free" services, but also because of "The Internet of Things".

Internet of Things
Hot tubs will take over the world if we may believe (yes, again) James Whittaker. He has programmed his hot tub to automatically order ingredients for his hot tub and call a mechanic if it detects it needs a repair. How awesome!
According to some statistics the "Internet of Things" is currently over hyped, but it is something that will really change our lives. Every device in our household will become more intelligent and generate a bunch of data we can build intelligent systems on.

This is the overview of TechEd NZ 2014, more posts will follow with more details on specific sessions!