Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Rebuilding New User Education on Mobile

Wendy Lu
November 09, 2015

Rebuilding New User Education on Mobile

Mobile+Web DevCon 2015, San Francisco

Wendy Lu

November 09, 2015
Tweet

More Decks by Wendy Lu

Other Decks in Programming

Transcript

  1. Filtering Criteria •App type and app version •Gender •Number of

    days since signup •Country and language •Number of pins, boards, etc. •Historical data: How many times a user has pinned, etc.
  2. 1 step vs. 2 steps vs. 3 steps Experiment with

    different versions of Guides
  3. "display_data" = { steps = ( { "cacheable_image" = "http://mobile-assets.pinterest.com/iphone/edu/ios-profile-keith.jpg"

    "continue_text" = "Next"; id = 1; "title_text" = "Keith has a board for stuff he wants to wear"; }, { "cacheable_image" = "http://mobile-assets.pinterest.com/iphone/edu/ios-profile-ash.jpg" "continue_text" = "Next"; id = 2; "title_text" = "Ash saves places to travel and recipes to try"; }, { "cacheable_image" = "http://mobile-assets.pinterest.com/iphone/edu/ios-board-style.jpg" "continue_text" = "Done"; id = 3; "title_text" = "You can make boards for anything you're interested in"; } ); };
  4. Maintaining performance •When doing experiments where we need to call

    the network to retrieve data, need to make sure we’re not adding perceived latency •“Be fast or fail fast”
  5. What are nags? •Important information which we occasionally display at

    the top of a user’s feed •Can be a Call to Action “Confirm your email” or an announcement “You can now discover more pins!”
  6. Enter: The Experience Framework •Each time we reload the home

    feed, ask the experience framework: What should I show in this nag?
  7. Experience.IOS_NAG_CONFIRM_EMAIL: { 'owner': 'dannie', 'description': 'Confirm email nag.', 'handler': 'core.logic.experiences.handlers.ios.base.ConfirmEmail',

    'ast_filter': { 'op': 'call', 'f': 'VersionMatchesRange', 'args': ["<=3.5:ios"] }, 'copy_key': 'IOS_NAG_CONFIRM_EMAIL_YYGCI', 'display_data': { 'title_text': get_copytune_text("Email confirmation", text_key="wl0M9"), 'detailed_text': get_copytune_text( "Don't forget to confirm your email!\nJust look for the message we sent you.", text_key="WQm5F"), 'button1_text': get_copytune_text("Change address", text_key="JXtwS"), 'button1_uri': 'pinterest://settings', 'button2_text': get_copytune_text("Resend email", text_key="w637C"), 'button2_uri': 'pinterest://send_verification_email', 'complete_action': ExperienceCompleteAction.DONT_COMPLETE_AND_SHOW } }, Server-side configuration
  8. Wins from Experience Framework •Single place in the backend that

    manages all education for all platforms •Dynamically trigger display of content •Conflict resolution for educations that touch the same views •Experiment with flows, messaging, and images