I’ve been fascinated by the conversation happening online about context. Jason, Mark, Jeff, and Luke (see “Mobile Context Revisited”)—as well as many others—have provided some compelling reasons for us to continue the discussion.
I recognize the danger of content assumptions based on the immediate context of a user's single visit to a website, especially if this “context” is really just “device-width.” However, I think we all believe there must be a way to use context to provide a better experience for our users.
Even if we extend our understanding of context to include more than the width of the device or browser (think “connection speed,” “location,” or other available attributes), we’re still relying on clues from a single visit. This is thin ice, especially if we’re serving an entirely unique DOM.
What if we could rely on observed patterns in our users’ behavior to make a more educated guess about content priority? Rather than observing a user's context at one time, we could observe the story leading up to that moment in time.
If we can suspend the focus on implementation details for a minute, let's imagine a couple of possible perspectives using what I'll call “story” instead of “context.”
The “My Site” Perspective
We could track and act upon the highest priority content for a given contextual user group. For example, let's say 80% of users on small screen devices which are also in motion while visiting your site just want a phone number and directions to your restaurant. However, we may see that 90% of all users that visit during the lunch hour (regardless of screen size, connection speed, etc.) are looking for a menu and a phone number. Adjusting the priority of this content dynamically based on aggregated visitor patterns would give you a site that really responds. Of course, a technique like this doesn’t alleviate the common concern of frustrating the user group in the remaining percentile.
As opposed to dynamically adjusted content, and using today's available resources, we could actually use an analytics package to manually grab and act on some of this data now. We could create manually adjusted priority content per user scenario. Obviously, removing the dynamic nature of a “learning site” from development will cut down on cost, so maybe manual adjustment is the way to go in this “my site” perspective.
But, I think we can do better…
The “One User” Perspective
If individuals had some kind of dynamic user profile that traveled with them as they browsed from one domain to the next, we could prioritize content based on this larger context—a user's “story,” if you will. I'm talking about observing an individual’s usage patterns across many sites and completely redefining “context.”
There are many complexities in a system like this (both ethical and technical), but one could also combine this idea with “The Coming Zombie Apocalypse” (via Scott Jenson) to imagine an amazingly responsive world. It’s not difficult to envision a time when real-world interactions outside of a browser could also contribute to an individual’s story.
I usually work late on Tuesday nights. Occasionally, I like to surprise my wife by skipping work, finding a babysitter, and taking her out to dinner for the evening. On those days, I text one or two potential babysitters, make a dinner reservation, get home a little early, change clothes, etc. It’s not until my wife and I are finally in the car that we exhale and slow down. Sitting in the driveway, we then (1) try to find directions to the restaurant and (2) look up movie times. In my real-world example, there is a story that exists outside the confines of the single visit to the restaurant’s website. Texting, calling, and leaving work early are all clues that could add valuable data to my profile. Going one step further, my choice in clothing—if it were detected by a network in some way—could also contribute clues (cue the Zombie Apocalypse).
Have You Lost Your Mind?
I won't lie; I love science fiction. But I don’t think we’re as far from this kind of scenario as some might say. Talking about this topic in the Sparkbox office, Rob Harr quickly pointed out that Amazon Silk, with its connection to the Amazon Cloud, is well positioned to begin down this road. All of this is just to say it’s possible (and fun to consider).
Maybe this post is really a long-winded way of asking the community to start thinking about more than a single visit when we’re considering “context.” I’d love to hear about existing systems doing this or other ideas on how it could be useful. Chime in!