Friday, March 07, 2014

Lately it seems to be all I do and talk about... Context. Contextual. Content in Context. Context Engine. So I felt it appropriate to blog about what exactly are we doing with Context in the SDL Web Product Line.

If you've played around with Tridion 2013 SP1 you might have seen something new on the installer:

This is probably the only visible part of the Context Engine (for now) in the Content Manager (and I'll get to it in a bit), but behind the scenes there is a really powerful tool to help you determine the current context of a visitor's session.

What is context? Well, to put it bluntly, Context is Everything, especially in the context of Customer Experience Management.

"To create a perfect experience - we must understand why you are here - we achieve this by understanding who you are and the current context…"

After a few iterations, we decided to focus on the following 4 aspects of Context:

Device used

Time spans

Geo Location

Visitor characteristics (explicit or implicit profile)

And then we started working on ways to discover these characteristics, and how the intersection of all those can provide a meaning to someone's visit to your site - therefore allowing you to "decide" what to show to this visitor in this context. We have currently finished (and released last December) our server-side Device Detection module, "SDL Mobile", which you can use in conjunction with any client-side device-ready code you may have in place already, extending the capabilities of RWD into the RESS territory (image resizing based on device width, HTML optimizations depending on device capabilities, etc, all done server-side to minimize bandwidth usage - and ultimately requiring less time to load).

Time spans are easy to control and calculate too... though what those time spans are really depends on the nature of your business. In some business areas, time spans can be as wide as a whole season, while in others the actual time of day could be the most important time span.

Geo-Location is not black magic either, and we offer both ways to do it via Server-Side IP geo-location, or integrating client-side HTML5 geo-location into your Ambient Data set.

Fourth, and definitely the biggest aspect, is management of the user profile. And this is where the "Context Expressions" you see in the new installer come into play. As you might know, SDL acquired Alterian early in 2012, and one of the many parts we acquired was this product called "CMA" (Customer Management and Analytics) which can analyze massive amounts of data you gathered about your customers, irrelevant of their source - POS, website, newsletters - and allow you to create segments from that data.

With the Context Expressions extension we allow you to save the segment definition into Tridion as an Expression (could be something as simple as "customer.state='NY'", or more complex like "customer.country='NL' and device.mobile=true and customer.ownsproduct=true), and you can link this expression to any component presentation - the content will only display if the expression is true. The mixing and matching of these context variables allow editors to create content that maps specifically to a specific context, and gives you lots of power in targeting... or contextualizing your site's content and presentation.

Obviously, given that the Context Engine runs on top of the Ambient Data Framework, all this information is also available to other tools, like Fredhopper/SmartTarget.