Web personalization by Bryce Roberts
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Web personalization by Bryce Roberts

on

  • 369 views

This presentation provides an overview of implementing web personalization with a thick client (jQuery) and Cascade generated content sets and management for an admission site. It will provide example ...

This presentation provides an overview of implementing web personalization with a thick client (jQuery) and Cascade generated content sets and management for an admission site. It will provide example of both environmental and behavioral information based web personalization. This presentation provides a starting point on the road to web personalization.

Statistics

Views

Total Views
369
Views on SlideShare
369
Embed Views
0

Actions

Likes
2
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Web personalization by Bryce Roberts Presentation Transcript

  • 1. By Bryce Roberts, MS, MSPH StoneRidge Corporation Bryce@stoneridge.net © 2013 – StoneRidge Corporation
  • 2. • What is Web Personalization? • Who does it well? • Example ideas with Cascade © 2013 – StoneRidge Corporation
  • 3.  Define web personalization  Know a sample of uses cases for web personalization in higher education  Know key features of Cascade Server that support web personalization  Understand an implementation strategy (tags)  See example of tools that can facilitate web personalization © 2013 – StoneRidge Corporation
  • 4. One view to rule them all … © 2013 – StoneRidge Corporation
  • 5. © 2013 – StoneRidge Corporation  Most higher education sites provide a single web content set for all viewers of a particular piece content  Individualization of content is often through separate pages or event sites  Highly successful business firms personalize content in both digital and physical forms
  • 6.  Content personalization is coming … ◦ Like the revolutions in social media and responsive design ◦ It is already having dramatic effects on the ways people engage with favorite websites  In some cases web personalization is already here and driving large sites  Guess what … Cascade Server can help! © 2013 – StoneRidge Corporation
  • 7. Why not use this one view? You cannot wield it. © 2013 – StoneRidge Corporation
  • 8.  More is lessMore is less  Nielsen Norman Group [1] ◦ … at most 28% of the words during an average visit [are read] … ◦ 4.4 seconds more for each additional 100 words  More content is now displayed on pages ◦ Mostly driven by images but also text © 2013 – StoneRidge Corporation 1 Nielsen, J. How Little Do Users Read (2008) Nielsen Norman Group
  • 9.  Not all content is equally interestingNot all content is equally interesting  Web pages are viewed by irrational people ◦ Perfectly rational would look through all content ◦ No one is perfectly rational ◦ If not engaged, user will use the back button or leave site  Pages often are for multiple types of viewers with different interests and goals © 2013 – StoneRidge Corporation
  • 10.  Improvement of content engagement ◦ Longer, deeper, more  Enriched user experience ◦ “That’s just what I am looking for …”  Enhanced brand perception ◦ “They really get me …”  Increased conversion rate ◦ *Click* © 2013 – StoneRidge Corporation
  • 11. What are you waiting for? Just let it go! The one view is mine. NOOO … © 2013 – StoneRidge Corporation
  • 12.  Web personalization is a type of content personalization.  Web personalization is the process by which information about the viewer is utilized to dynamically insert, update, or select content © 2013 – StoneRidge Corporation
  • 13.  In the physical world ◦ Direct retail marketing for years was the only game  Based on geographic location  Based on past behavior (orders) ◦ Current examples  The inventory at your location Wal-Mart®  Database of store behavior  Database of area demographics  Bed, Bath, and Beyond (store to home engagement)  “Can I have your zipcode?”  In the digital world …
  • 14.  Google ◦ The leader and pioneer of web personalization  Amazon ◦ “It know just what I want … ”  Netflix ◦ Cash and prizes to help us do it better  CNN (Outbrain) ◦ It is everywhere
  • 15. And sometimes you do want to know the end. Because how could the end be happy? © 2013 – StoneRidge Corporation
  • 16.  Identify Users ◦ Implicit – users’ behavior  Types of link clicked  Any measurable event ◦ Explicit – users’ observable data  IP address (geo-location)  User defined preference  Site entry point  Identify Content ◦ Tag, tag, tag ◦ Cascade can really help! … © 2013 – StoneRidge Corporation
  • 17.  Change Content ◦ Insert, Update, or Select based on the user identity and content identity  Refine (optional) ◦ Update your tags ◦ Update your users identification mechanisms ◦ Cascade can really help! ◦ Google Analytics can really help. © 2013 – StoneRidge Corporation
  • 18. You shall not pass! © 2013 – StoneRidge Corporation
  • 19.  No system, idea, or revolution is prefect  Web personalization can work against its own stated goals  Like most everything it is all about balance © 2013 – StoneRidge Corporation
  • 20.  Misidentification of user ◦ Example geo-location by IP is not perfect ◦ Not everyone who goes to prospective guide page is a prospective student  The “personalization bubble”  Content exploration is more difficult © 2013 – StoneRidge Corporation
  • 21. There's plenty for the rest of us... may the best website win! © 2013 – StoneRidge Corporation
  • 22.  Google search – “Auto Repair Shopts” query  Geo by IP  Can include user behavior – spelling suggest  Highly Personalized © 2013 – StoneRidge Corporation
  • 23.  Geo-location place the most likely location to be approximately 25 miles away  The content bubble effect – only saw auto shops in Norcross (not Marietta)  Hard to explore desired content, because of content bubble effect  User disengagement – not what I wanted
  • 24.  First time custom – provide a general homepage without customization  Promotes general products © 2013 – StoneRidge Corporation
  • 25.  Search for “glass blowing” and click on the first product  Promotes other glass blowing books – other users’ behavior  Returning later the homepage now shows books about glass blowing – current user’s behavior © 2013 – StoneRidge Corporation
  • 26.  The content bubble effect – only see suggested products related to glass blowing  Incomplete profile, which is tied to a particular browsers/computer (profile does not cross browsers on same computer or between computers)  Profile bleed – if a new user comes to the same computer, the profile is not refreshed.
  • 27.  Progressive enhancement to user’s suggestion movies  Implicit – All about user’s behavior  Feedback mechanism © 2013 – StoneRidge Corporation
  • 28.  Starting out – content suggestions seem random and disjointed  Requires significant amount of time to build a profile of the user  Content bubble – show only shows like one you have watched and rated as liked  Profile bleed – if a new user comes to the same computer, the profile is not refreshed.
  • 29.  Embedded third party user profiling and content provider  Found on all pages  Seamless between owner content and third party’s content  Content from Apple iPhone announcement © 2013 – StoneRidge Corporation
  • 30.  Embedded third party user profiling and content provider  Found on all pages  Seamless between owner content and third party’s content © 2013 – StoneRidge Corporation
  • 31.  Just like Netflix  Starting out – content suggestions seem random and disjointed  Requires significant amount of time to build a profile of the user  Content bubble – show only articles like one, which where previous click (no feed back mechanism)  Profile bleed – if a new user comes to the same computer, the profile is not refreshed.
  • 32. Anyways you need people of intelligence on this sort of … mission … quest … thing! © 2013 – StoneRidge Corporation
  • 33.  Force users to login when coming to your site and fill out a complete information profile  Put all content for all audience on all pages  Create sites for each type of viewer and let the user choice, which site to visit © 2013 – StoneRidge Corporation
  • 34.  Dynamically insert content ◦ Example: insert additional content into page  Dynamically update content ◦ Example: change the order of content on a page  Dynamically select content ◦ Example: select which content place on a page  Cascade supports this process! © 2013 – StoneRidge Corporation
  • 35.  JS based ◦ Can use any JavaScript library for structuring and supporting web personalization (only limits are target users) ◦ Example are with jQuery since is a extremely helpful in DOM manipulation ◦ Storage and persistence is require for more meaningful personalization  Cookies  jStorage – great library  Plan on general content if JS is not enabled © 2013 – StoneRidge Corporation
  • 36.  Embedded content ◦ Cascade output ◦ Classes on html element ◦ Embedded JS variables (ex. array of event data) ◦ Embedded XML ◦ Feeds (RSS, ATOM, XML, JSON)  Can be on a page  Can be shared resource across site © 2013 – StoneRidge Corporation
  • 37. A web technology is never late. Nor is it early. It arrives precisely when it means to. © 2013 – StoneRidge Corporation
  • 38.  In most higher education environments, most every if not all page can have some elements of web personalization.  Examples to be discussed ◦ A university’s homepage ◦ A newsroom or event calendar ◦ An admission site * Examples are drawn from monsteruniversity.com – it is a lot of fun and is used for educational purposes with claim of copyright (under fair use), all images of the site are covered by Pixar’s copyright © 2013 – StoneRidge Corporation
  • 39.  Differentiate by audience (internal to campus vs external users)  Four area of content to think about customizing base on audience ◦ Stories ◦ Calls to action ◦ News ◦ Events © 2013 – StoneRidge Corporation
  • 40.  Stories  Calls to action  News  Events © 2013 – StoneRidge Corporation
  • 41.  Stories ◦ Filter by fright-net (subnet)  External computers  Continuing education for new extreme creepiness  Local computers  Dean’s message about dishonor code  Calls to action ◦ Filter by audience  Alumni  Monsters Hiring Monsters initiative  Prospective  Apply today to scare tomorrow © 2013 – StoneRidge Corporation
  • 42.  News ◦ Audience  Student  Student Pride Event free 4-arm hoodie  Staff  Update healthcare form to cover new growths  Events ◦ Audience and Geo  Student on campus  Campus event - Tailgating for the MU Monsters  Alumni off campus  Local alumni chapter meeting © 2013 – StoneRidge Corporation
  • 43.  Interior content order  Navigation links order and selection  Supplemental navigation (quick links)  Store Items (Parent, Alumni, Current …) © 2013 – StoneRidge Corporation
  • 44. It's the job that's never started as takes longest to finish. © 2013 – StoneRidge Corporation
  • 45.  Callouts on Homepage ◦ Audience – Insert content  Apply Now Page ◦ Audience – Update content (order)  Events Feed ◦ Audience and Geo-location – Select content © 2013 – StoneRidge Corporation
  • 46.  Tag, tag, tag  The agile nature of Cascade server allows for creation of sophisticated tagging systems  You are only limited by your imagination  Example types: audience and geo-location © 2013 – StoneRidge Corporation
  • 47.  Simple Object – Base on a string value  Expandable – can be used to collect and produce tagged content (feeds, etc…)  Good to include self documentation and description information about the tag © 2013 – StoneRidge Corporation
  • 48. © 2013 – StoneRidge Corporation
  • 49.  Complex Object – Base multiple values  Expandable – can be used to collect and produce tagged content (feeds, etc…)  Good to include self documentation and description information about the tag © 2013 – StoneRidge Corporation
  • 50. © 2013 – StoneRidge Corporation
  • 51.  Often content tags are attached to pages ◦ Useful for tagging both pages and blocks ◦ Can be use to create feeds  Tagging content becomes as simple as using a page picker  Tag lexicon can be expanded as needed. © 2013 – StoneRidge Corporation
  • 52.  Callouts – blocks ◦ Included on other pages  Apply Now page – within page content ◦ Direct tagging on a page  Event page – individual pages ◦ Collected in general feed ◦ Collected as a topical feed © 2013 – StoneRidge Corporation
  • 53. Tagging can be a single associate or multiple associations with different types. © 2013 – StoneRidge Corporation
  • 54.  Implicit ◦ Clicking on links  Explicit ◦ Geo-location ◦ Freegeoip.net (it really is simple) ◦ {"ip":"50.194.225.53","country_code":"US","country_na me":"United States","region_code":"GA","region_name":"Georgia","c ity":"Alpharetta","zipcode":"","latitude":34.0754,"longitud e":-84.2941,"metro_code":"524","areacode":"770"} © 2013 – StoneRidge Corporation
  • 55.  Should be similar in structure to your tags  Needs to be persistent  {audience : “Undergraduate”, geo: {country_code: “US”, region_code: “GA”}}  jStorage - http://www.jstorage.info/  May want to set a TTL © 2013 – StoneRidge Corporation
  • 56.  Functions ◦ checkUser() ◦ getUser() ◦ getUserAudience() ◦ getUserGeo() ◦ deleteUser() © 2013 – StoneRidge Corporation  Functions ◦ createUser() ◦ clearUser() ◦ setUserAudience() ◦ setUserGeo()
  • 57.  Cascade ◦ Tag action in cascade ◦ Example of audience navigation link © 2013 – StoneRidge Corporation  On Page ◦ Embed data in page ◦ Base on action <a href=“…” onclick=“setUserAduie nce(‘value’);”>…</a>  This can be implement many ways and integrated with GA
  • 58.  Create callout structure and tag content © 2013 – StoneRidge Corporation  Include content on homepage and output with tagging
  • 59.  Structure – On page  callout = { img: image, href: link, txt: text, tags: { audience:[] } } © 2013 – StoneRidge Corporation  Include all callout information on the page in the form of JSON.  This is collected into an array  On page load change user and insert content
  • 60. (function($){ $(function(){ if(!checkUser()){createUser();} var numberOfCallouts = 2; var locationOfCallouts = ‘.callouts’; var callouts = []; …… }); })(jQuery); © 2013 – StoneRidge Corporation
  • 61. … var = userAudience = get if(getUserAudience !== ‘’){ callouts = $.grep(calloutArray, function(co){ return $.grep(co.tag.audience), fn(au){ return au == getUserAudience(); }).length > 0 ; }); } else {callouts = calloutArray;} … © 2013 – StoneRidge Corporation
  • 62. … displayCallouts(callouts, numberOf Callouts, locationOfCallouts); … Content is dynamically insert with a filter by user audience. Cascade server help manage the tagging jQuery provide tools for create application logic simply © 2013 – StoneRidge Corporation
  • 63.  Tag content on page by audience © 2013 – StoneRidge Corporation
  • 64.  Include tag value directly in the content  All content always displayed  Only order is adjusted <div id=“reorder-container”> … <div data-audience=“” class=“reorder”> <div>Section Title</div> <div>Content …</div> </div> … </div> © 2013 – StoneRidge Corporation
  • 65. $(function(){ $(“.reorder”).filter(function(index){ return $(this).data(‘audience’) == getUserAudience(); }) .detach() .prependTo(‘# reorder-container’); }); Reorder content if user as audience value © 2013 – StoneRidge Corporation
  • 66.  Tag content on page ◦ By audience ◦ By geo-location  Collect content with content type index  Create feed output © 2013 – StoneRidge Corporation
  • 67. <events> <event> <audiences> <audience>Value</audience> … </audiences> <locations> <location> <country>Value</country> <region>Value<region> </location> </locations> … event data … </event> </events> © 2013 – StoneRidge Corporation
  • 68. $.get(‘feeds/events.xml’,function(data){ $events = $(‘event’, data); var $selectedEvents = $events.filter(function(index){ return $(this) .find(“audience:contains(“+getUserAdience()+”)”) .length > 0 && $(this) .find(“region:contains(“+getUserGeo.region+”)”) .length > 0 }); outputSelectEvents($selectedEvents); outputAllEvents($events); }); © 2013 – StoneRidge Corporation
  • 69.  Select content can be use differently form all content  Selection can be based on audience, geo- location, or both  With Cascade provide a simple method for tagging, JavaScript (jQuery) can provide powerful web personalization quickly and easily © 2013 – StoneRidge Corporation
  • 70. If I take one more step, it'll be the farthest away from home I've ever been © 2013 – StoneRidge Corporation
  • 71.  Web personalization is a progressive process, which should include refinement  Over time the methods for implicit and explicit user identification can be improved  Google Analytics or other user behavior tools can be extremely helpful in this process  As you build and refine your tool, the quality and effectiveness of your web personalization efforts can only increase © 2013 – StoneRidge Corporation
  • 72.  JavaScript is great for developing this type of dynamic webpage but server side languages can also be unitized  Much sure to have clear goals when implementing web personalization  Utilize user behavior to refine you content © 2013 – StoneRidge Corporation
  • 73. I wouldn’t be here without you © 2013 – StoneRidge Corporation
  • 74.  Hannon Hill ◦ For continuing to develop and add wonderful features to Cascade Server ◦ For nurturing a wonderfully vibrant user community  Holly and the Hannon Hill team ◦ For making this presentation possible with the wonderful suggestion of the topic  You ◦ For taking time and coming to my presentation © 2013 – StoneRidge Corporation
  • 75. Bryce Roberts, MS, MSPH StoneRidge Corporation 1050 E Piedmont Rd. Suite E-222 Marietta GA, 30062 678-391-6173 Bryce@stoneridge.net www.stoneridge.net © 2013 – StoneRidge Corporation