Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatic tutorial #1552

Closed
matkoniecz opened this issue Sep 5, 2019 · 4 comments
Closed

Automatic tutorial #1552

matkoniecz opened this issue Sep 5, 2019 · 4 comments
Milestone

Comments

@matkoniecz
Copy link
Member

matkoniecz commented Sep 5, 2019

This is created based on user testing results.

Missing tutorial/explanation was identified as a major issue. It turns out that for new users it is not clear how app works.

Now quests download faster but it still is not an instant process.

All other parts are still present and I think that it is the largest issue for new users (that is fixable within StreetComplete, mobile registration for OSM account is a bigger issue but not fixable by changing StreetComplete).

I thought also about making tutorial with user solving one or two fake quests as a demonstration. Or making introductory slides but I think I have an idea for something better.

I will keep mentioning "prominent message" later - I thought about something far larger than a standard toast message and also appearing for longer, hidden by tapping on quest marker and displaying quest menu.

I though even about making it a banner taking about 1/4 or 1/3 of a screen but it is likely to be ugly and fail anyway due to a banner blindness.

<5 stars, 0 available quests - show a prominent message "Quests are downloaded automatically. Internet connection is required at this stage"

<5 stars, >=1 available quests, 0 quests visible in view field - show prominent message "You can zoom out to show quests"

0 or 1 star, quest available in view field - "Tap quest marker to see the question and survey the place to answer it".

I admit that I made no attempt to check is it technically possible (in a reasonable way). But I wanted to check first is it a good idea. Also, I am writing in a bus, without ability to finish one of my open PRs or verify whatever such triggers are likely to be feasible.

@rugk
Copy link
Contributor

rugk commented Sep 6, 2019

I'd guess this issue is quite similar, if not a duplicate of #178.

My two cents:

  • I'd rather not create fake quests
  • I still like slides for introduction
  • the other part of the tutorial can be live quests

Okay, but comparing to iD's tutorial, which I quite like, they use a fake env there. But iD is much more complex than this app.

@matkoniecz
Copy link
Member Author

There are two main differences - it is harder (maybe impossible) to implement, but provided information would be in context.

People will be very likely to swipe screens without absorbing any information, I also tried to write them and either some (at least in some situations) info is not provided or overall impressions is "this app is broken and not working".

But yes, #178 and this is intended to achieve very similar effect and if this turns out to be unfeasible I will probably will try again something like #178.

@smichel17
Copy link
Member

smichel17 commented Feb 12, 2020

Here's my take on first run UX:

  1. User opens the app
    • Continue prompting for location, as we currently do
    • Don't show changelog on first run
  2. User grants location access
    • In the foreground, show ONE intro slide, like the first image in Swipe/encouraging/information screens #178 (comment). The goal is to motivate people/explain why using this app is a good idea.
    • In the background, do a depth-first search for quests: find ONE quest that is close to the user's current position, prioritizing distance over quest priority (still some weight to priority).
      • The goal is to get a single quest that can be shown on the map as soon as possible, by the time the user has clicked through the single intro slide.
      • Do not show a "searching for quests" toast.
      • Once this is found, continue searching for quests in the background, with normal parameters.
  3. User presses the button to dismiss the intro slide.
    • If ONE quest has not been found yet, show a big spinner on screen with "Searching for quests" until it is found. Should cover maybe 1/2 the screen, since there's nothing else to do at this point but wait. This would appear on top of the intro slide, which would not disappear until the quest is found.
    • If multiple quests have been found by this point, select only one, based on proximity and priority, and maybe also "beginner-friendliness".
    • Once the quest has been found (or chosen), automatically zoom in to location (currently I need to tap the location button for this to happen). Instead of centering on the user's current location, position the camera so that both the user's location and the chosen quest are visible.
    • Show only the single quest on the map.
    • Show a text box at the bottom of the screen prompting the user to tap the quest.
    • Continue searching for more quests in the background, as needed.
  4. User taps the quest.
    • Open the quest and run through it as normal.
  5. User completes the quest.
    • Optional: show an extra fancy completion animation that draws attention to the star count.
    • Move the view back to center on the user's position
    • Populate the map with quests as normal.
    • Zoom out until at least one quest is visible on screen

As long as "find one quest very quickly" is technically possible, I think this addresses all the concerns:

  • Very little waiting for quests to populate
  • Very little reading before starting to complete quests
  • Shows users how to complete a quest
  • …using real OSM data

My only concern is, what if we show the user a quest type they are unable to complete (or not interested)? But, this can be worked around — for example, by returning to normal flow on either completion or cancellation of the initial quest.

@westnordost
Copy link
Member

I was thinking of an intro screen or dialog that has several pages (typically shown with those circle-indicators) which can be skipped at any time.
If it is only about 3 slides or so, I don't think having the possibility to skip it is necessary. People who are impatient will just click next - next - next and as you said, there is nothing to do in the first 30 seconds or so.

Anyway, good ideas in general.

In the background, do a depth-first search for quests: find ONE quest that is close to the user's current position, prioritizing distance over quest priority (still some weight to priority).

Regarding this point, actually the quest search is always depth-first, and prioritizing distance over quest priority is not possible, for technical reasons.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants