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

Create predefined Quest Presets #3981

Closed
basings opened this issue Apr 20, 2022 · 22 comments
Closed

Create predefined Quest Presets #3981

basings opened this issue Apr 20, 2022 · 22 comments
Labels
feedback required more info is needed, issue will be likely closed if it is not provided

Comments

@basings
Copy link

basings commented Apr 20, 2022

Please don't overwhelm new mappers.

Preface

Adding what kind of building a house is might be nice but it doesn't really improve the overall map in regards to overall information. Maybe I need to explain that even if all current osm mappers map a lot and add details, the map won't ever reach the amount of detail we'd love to see. Meaning, we need more people, even if they just do their own surrounding or 10 quests a year or whatever. You can easily add a lot of detail in your nearby area but as soon as it's a little bit further away, it gets difficult and time consuming. There are 10000 people living in the next village but no osm mapper, normal people need to have an easy mod for osm and not getting overwhelmed.
osm needs poi information such that you can use it on a daily basis to lookup everything. This is the point where "all" people will contribute and the map gets a level of detail that we all desire. We can't do it, even if we wanted to. "Normal" people need to add information on a random basis. Open the app once a month when you are bored waiting for the bus.
Building types or how many levels a house has, will not improve the likelihood that people choose osm to lookup information. It may be just my point of view and others have a different opinion on this but the quests should be initially more relevant. How many steps a stair has or if a bench has a backrest is really nice to know and I map it but it doesn't help osm grow. osm won't be the map to go if it has all the information about the material of a power pole. It's nice to see the type of a barrier at a railway crossing but it's not that relevant for most users. People choose osm based maps, e.g. komoot for hiking because it has a really nice level of detail. You can see the road surface if you plan a route, etc.. You don't use osm to lookup the opening hours of a store because the information is just not there because too few people are using it. If I understand it correctly, streetcomplete aims to bring mapping to the people, make it easy. For everyone, regular mappers and newbies that don't even know about JOSM. But if I wouldn't know anything about maps and opened the app, there'd be just a lot of "useless" stuff I could add.

Description

The default preset shows initially all quests. Any area where many/most details are missing is just filled with points and icons. Any new osm mapper who starts with streetcomplete shouldn't be overwhelmed by the sheer amount of quests. And sometimes not really important quests like what's the diameter of a hydrant. It may be important to some but that's really a very tiny minority.

  • Create a preset that contains more relevant quests for most users (and disabled people?), e.g. surface of a road, sidewalk, etc. NOT diameter or kind of a hydrant.
  • Create multiple presets that are based on a topic. Some may just be interested in improving a specific part of the area.
    • Disabled people: "tactile paving", "curb height", ..
    • Routing: surface, name, lighting, ..
    • Fire fighter: hydrants, ..
    • Car: parking fees, ..
  • Show the different predefined presets after installation and updates. Need a justification? Add a new preset in an update.
  • still allow for customization
  • group the quest items in the list based on the presets separated with a header which can also be enabled/disabled at once for all containing items. Collapsible?
@basings
Copy link
Author

basings commented Apr 20, 2022

Presets need to be easily accessible, i.e. a button on the screen to switch and not 3 clicks away in the settings.

@10992-osm
Copy link

10992-osm commented Apr 20, 2022

Generally, #3481 might be slightly linked.

Presets need to be easily accessible, i.e. a button on the screen to switch and not 3 clicks away in the settings.

For that specifically, you might wish to look at #3228.

@westnordost
Copy link
Member

westnordost commented Apr 20, 2022

I acknowledge that this is a problem. Though, what quests exactly are most important differs somewhat from user to user. Creating list of "the really important quests" had been thought about before but I guess it is more easily said then done to come up with a reasonable list.

Also, the most important quests in terms of value of the data added are not always the quests that are most quick and easy to answer. Would a casual user who would just want to contribute here and there to StreetComplete rather answer the most important but more involving and more difficult to answer stuff or rather the stuff that he can check off most quickly? I would think it is the latter, actually, because casual mappers are the very target group of this app.

The place where such a switch to show less quests could be integrated is the dialog that shows up the first time a user downloads an area with a high density of quests. This dialog offers the user to go into settings and adjust which quests are shown to him. There could be a buton that would disable some of the more spammy quests (building related quests at least, I guess).

Care to browse through the list of quests and make a suggestion which could be disabled in that UI interaction?
https://github.com/streetcomplete/StreetComplete/blob/f6b61c3ac82265d65865f4c657bd0f23807085b2/app/src/main/java/de/westnordost/streetcomplete/quests/QuestsModule.kt

Another reason why this has not been done (yet) is because quests are prioritized (in display) by how easily and fast they can be solved (from a distance). The building type stuff for example is pretty far down this list, so anything more interesting is automatically shown with higher priority (i.e. if there is not enough space, the building quest is not shown). Thus, the more spammy and/or more difficult to answer quests should never occlude the more interesting and/or quick and easy to solve quests.

So, why hide those quests at all? I think the only reason that remains is to not overwhelm the user, as in "oh god, there is too much too do, I will never be able to solve this all, so better not even start!"

@HolgerJeromin
Copy link
Contributor

Adding what kind of building a house is might be nice but it doesn't really improve the overall map in regards to overall information.

It does because it unlocks the very important address quest.

@Binnette
Copy link
Contributor

Hi, I was about to create this feature request 👍 I really like the new "quest presets/profiles".

Right now I created the following profiles:

  • Highway/train passenger: I use this when I am passenger in a car. So basically. I activated only a few quest:
    • (Basically the quest that can be solved only from far distance)
    • Do the trees here have needles or leaves?
    • Is it lit here?
    • What’s this pole made of?
    • What’s the structure of this bridge?
    • Is this still here? (This one is great. It ask to check all emergency phones)
  • Bike:
    • All bike quests.
    • Disabled all quest that needs to stop my bike (getting inside building, counting building floors, ...)
    • Disable AR measure quests

I really would like StreetComplete to propose "presets templates" that we can copy and customize. For example "Walking template", "Biking template", "Train template", "Car passenger template", ...

Have a nice day.

@matkoniecz matkoniecz added the feedback required more info is needed, issue will be likely closed if it is not provided label Apr 21, 2022
@mnalis
Copy link
Member

mnalis commented Apr 24, 2022

I really would like StreetComplete to propose "presets templates" that we can copy and customize. For example "Walking template", "Biking template", "Train template", "Car passenger template", ...

@Binnette yeah, if copy/pasteable URI that SC automatically handles were to be implemented (like #3481 (comment)) then it would be easy to put few such URIs at any webpage (like FAQ or elsewhere) and users could click on any of suggested presets to import them to their device easily. SC could also automatically send new users there to select if they want some preset groups...

Care to browse through the list of quests and make a suggestion which could be disabled in that UI interaction?

@basings so, would you care to suggest that list of "only important" quests?

(If not, I can try to make a suggestion in few days about what list of important yet not-too-hard-to-answer to reduce the quest list to when the users indicate they're too overwhelmed by the number of quests)

@basings
Copy link
Author

basings commented Apr 25, 2022

@mnalis How about following?

Following table provides the first version to determine the importance of a quest. Quests that are important for disabled may be considered as important for all. I tagged quests as questionable when I wasn't sure. It's not solely the sheer amount of quests that are questionable but the relevance. Someone who checks out SC in e.g. a rural area will see a lot of useless quests and will question if it is really important to contribute to osm.

Quest Important Disabled Nice2Have Questionable Useless
accepts_cards x
accepts_cash x
address x
air_conditioning x
air_pump x
atm_operator x
baby_changing_table x
barrier_bicycle_barrier_type x
barrier_type x
bench_backrest x
bike_parking_capacity x
bike_parking_cover x
bike_parking_type x
board_type x
bollard_type x
bridge_structure x
building_levels x
building_type x
building_underground x
bus_stop_bench x
bus_stop_bin x
bus_stop_lit x
bus_stop_name x
bus_stop_ref x
bus_stop_shelter x
camera_type x
car_wash_type x
charging_station_capacity x
charging_station_operator x
clothing_bin_operator x
construction x
crossing x
crossing_island x
crossing_type x
cycleway x
defibrillator x
diet_type x
drinking_water x
existence x
ferry x
fire_hydrant x
fire_hydrant_diameter x
fire_hydrant_position x
foot x
fuel_service x
general_fee x
handrail x
internet_access x
kerb_height x
lanes x
leaf_detail x
level x
max_height x
max_speed x
max_weight x
motorcycle_parking_capacity x
motorcycle_parking_cover x
note_discussion x
oneway x
oneway_suspects x
opening_hours x
opening_hours_signed x
orchard_produce x
parking_access x
parking_fee x
parking_type x
picnic_table_cover x
pitch_lit x
place_name x
playground_access x
police_type x
postbox_collection_times x
postbox_ref x
postbox_royal_cypher x
powerpoles_material x
railway_crossing x
recycling x
recycling_glass x
recycling_material x
religion x
road_name x
roof_shape x
seating x
segregated x
self_service x
shop_type x
shoulder x
sidewalk x
smoking x
smoothness x x x
sport x
step_count x
steps_incline x
steps_ramp x
street_parking x
summit_register x
surface x
tactile_paving x
toilet_availability x
toilets_fee x
tourism_information x
traffic_calming_type x
traffic_signals_button x
traffic_signals_sound x
traffic_signals_vibrate x
way_lit x
wheelchair_access x
width x

@westnordost
Copy link
Member

Hm well, this categorization is orthogonal to what Binette wrote and orthogonal to what I wrote. Because its only criteria is (perceived) importance, it includes time intensive quests such as the opening hours one, surface type and even difficult to answer ones (that are disabled by default for this reason) like the smoothness one and quests that appear in massive amounts such as the building type one. TBH I do not find this categorization helpful at all.

Offering the user to switch down to "only really important" quests if there are too many in his area will then not really help at all in not overwhelming him. As I wrote before, if the goal is to not overwhelm (new) users, then the criteria should not be what is important but what is quick and easy to solve (not time intensive) and does not appear in large numbers (boring / spammy).

@NotSoImportant
Copy link

I agree to both:

  • Predefined presets will be a good thing to
    • not overwhelm users (reduce a felt preasure and frustration)
    • give users an easy start by allowing to choose what they want to work on, without having to think about each of the >100 quests
  • Grouping by custom importance is not a good idea, as everybody has their own understanding of importance

A suggestion to solve it: You could categorize quest presets by how they

  1. produce data interesting for different data consumers
  2. be solvable in different situations

Examples (for above meta-categorization):

  1. Just use the existing Achivement categories. Or use them as a starting point and refine around them.
  2. the already mentioned

    "Walking template", "Biking template", "Train template", "Car passenger template", ...

@Binnette
Copy link
Contributor

Sure @NotSoImportant , grouping quest by categories can be a great idea.

  • "relative to bike" quests,
  • "... road" quest,
  • "... footpath" quests,
  • "... building" quest,
  • ...

@NotSoImportant
Copy link

NotSoImportant commented May 15, 2022

I have created some in my app. Is there any way (even if not elegant) to export those in order to show them as a list here?
(for this no importable list needed right now as in #3481), but typing all of them will just be a lot.

I created

  • Bicycle infrastructure (cycleway, ramp, air pump, barriers, bicycle parking, charging station, segretation, speed limit)
  • Emergency infrastructure (hydrant, bridge height, defibrilator, barriers
  • Accessibility (blind quests, wheelchair quests)
  • Shops & opening hours (name, opening hours, exists, food)
  • Buildings (type, roof shape, number, street)
  • Measuring (heights and widths)
  • For children (easy to answer: with pictures or yes/no)
  • For co-driver (easy & fast to spot and answer while passing by)

Once I had them I noticed I need to see which one is currently selected on the main screen. So could we - maybe only in case not the Standard is selected - have the current profile shown on the main screen (maybe middle top) and be able to quickly change them on a tap? #3228

@Helium314
Copy link
Collaborator

Not directly I think. You can get the data from the database (quest_order table) and use same way as QuestTypeOrderController to get the list.

@NotSoImportant
Copy link

Ok, but any chance to get them without Software modification? E.g. through the file system? I could not find the db in the Android folder unfortutately.

@Helium314
Copy link
Collaborator

Depends whether you call getting root privileges a software modification. Database file is in /data/data/de.westnordost.streetcomplete/databases

@rugk
Copy link
Contributor

rugk commented Jun 18, 2022

grouping quest by categories can be a great idea.

I don't agree here. IMHO good categories are not grouped by the category of the quest (i.e. what it is about), but by the category of which are solvable when the user is using transport medium, i.e. I would argue for the mentioned "be solvable in different situations" quest. It hardly matters to me what I contribute, but that I can actually contribute anything (in a given situation as in the bus e.g.).

@mnalis
Copy link
Member

mnalis commented Jun 19, 2022

It hardly matters to me what I contribute, but that I can actually contribute anything (in a given situation as in the bus e.g.).

@rugk well, I beg to differ. While I definitely agree that mode of transport make some quests impossible to solve (e.g. I wouldn't have much success with mapping house numbers while on bus), it very much matters to me what I contribute. And vast majority of times I map in SC, I'm not physically limited by transport mode (i.e. I'm on foot).

Now, if SC was just some game where the point is to gain as much score points as possible, I'd agree with you, it wouldn't matter what quest I answer, as long as I get score. Perhaps gamification in SC could take importance of quests into account (e.g. solving roof shape would get you 1 point, while solving cycleway would get you 10 points, etc. But people would never agree on specific scoring table so we'd have to rely on BDFL decree).

However, while SC does have some gamification built it, my main point in contributing to OSM is to improve the usability of the map. So while I can easily map e.g. roof shape, number of floors, power pole material, leaf type etc. while on intercity bus, I do not see much use for those quests, so I generally don't do it (unless I'm very bored and unable to do something more useful).

So likely any grouping would need to be an intersection of:

  • what current transport mode physically allows, and
  • what I actually care about enough -- and that is by definition subjective and random (in my case it is mostly bicycle and shop related - as that is what I mostly use the OSM for, addresses - as it is generally useful for finding things, and few quests for persons with disabilities - as I have a few friends where it might help them. All the rest is basically due to gamification and/or boredom, or OCD at having quests shown in my neighborhood. Most notably for example I don't care much about car/motorcycle-specific quests, while some people might find those most important)

As the majority of the time I'm on foot (where I am basically not restricted at solving any quest), the seconds point holds much more weight for me. So I while have presets related to physical restriction on what I'm able to solve (on public transport and on bicycle), I have four of them for when I'm on foot (from less to more quests: important bicycle infrastructure only, important generally, intermediate, I'm dying of boredom - hit me with anything).

@mnalis
Copy link
Member

mnalis commented Jun 19, 2022

As for the original intention of this issue (AFAICT, "Please don't overwhelm new mappers"), perhaps it could be solved by showing the new users (after showing intro) something like the following (rough draft) questionnaire (and make Default preset having those quests selected, depending on the answers given. Also, when user later selects Reset in Quest selection show this questionnaire again and populate current preset with the result):


What would you like to help with (select one or more)?
(Note that you can always enable/disable quests afterwards manually in settings / quest selection)

  • Just show me few most important quests (e.g. address, oneway, ferry, road_name, restroom/toilets_fee) [alternatively, we could make those important quests always enabled, and ask for "ZERO or more" above in the title]
  • I'm interested in ecology/health (vegan, vegetarian, recycling, smoking, electric charging)
  • Religion related (kosher, halal, religion)
  • I'm bicycle/hiking enthusiast (cycleway, sidewalk, surface, track_type, smoothness, lit, drinking_water, ramp, bicycle parking, summit, bicycle shop/pump, air compressor)
  • Useful for motor vehicle drivers (surface, track_type, smoothness, lit, lanes, shoulder, self-service gas station, air compressor)
  • I want to help groups with disadvantages (i.e. disabled/blind person related quests)
  • I'd like a good default with many quests (current default)
  • Give me EVERYTHING, I can handle it! (what it says)

@NotSoImportant
Copy link

Hi @westnordost, may you explain your dislike?

@westnordost
Copy link
Member

I see it the same way @rugk does.

@mnalis
Copy link
Member

mnalis commented Jun 20, 2022

@NotSoImportant it basically boils down to whether:

  • one sees it as a way to pass time (or as a game where you need to score as much points as possible), and the eventual contribution to OSM is a nice side-effect
  • one has some agenda and want to improve things on OSM they personally find important (be it cycling infrastructure, veganism, helping people with disabilities, or just a car parking), and they don't care much about other stuff.

There are lots of proponents in both camps (which is why idea of custom presets was made possible, as implementing it was a big win for both camps)

While I see the transport-mode-folks view as generally applicable to this subject of "predefined Quest Presets" (and would not oppose if SC came with several such presets built-in, provided the user can delete and edit them), I don't think this issue specifically is about that problem: It specifically states "Please don't overwhelm new mappers." as it's main goal (there are many others which are, though).

And that (to me) assumes the user is on foot, and after installing the app (in areas which are not "cleared" already) is presented with thousands of quests, many of which are of low importance, which might be discouraging for new users (e.g. "Why should I waste time on this overwhelming task, as it is all just unimportant stuff; I'll just uninstall the app")

That specific sub-issue could also be handled by "default" preset with even less quests (instead of implementing multiple predefined quest presets), and more prominent notice how user can enable more (where such questionnaire or something similar might help, instead of forcing users to go manually through hundreds of quests)

@matkoniecz
Copy link
Member

For importance: one option would be to have preset removing quests where data use is only theoretical or in a tiny project used only in a small area. And keep only ones where data is directly usable.

Problems: what about quests unlocking important one (address quest is unlocked by spammy building type quest)

Another potential option is to have quest preset which enables ones requiring visit inside. At least some people expressed interest in solving such quests, but enabling all of them is quite annoying.

Problems: what about quests disabled by default as not useful everywhere (kosher/halal quests). I guess they should be still disabled.

by the category of which are solvable when the user is using transport medium

In my experience rearranging quest list resulted in this being solved as solvable quest tend to appear much earlier. Is there anything that would benefit from different list order and enablements for travel as a passenger in bus/car/train?

@westnordost
Copy link
Member

I'll close this. See my previous comments.

On the "do not overwhelm users" front, I can report that we have disabled some quests that are overwhelming or difficult to solve (building levels, orchard) and will disable all quests that are replaced by an overlay that does the same (lit, sidewalk, soon: cycleway, surface, ...)

@westnordost westnordost closed this as not planned Won't fix, can't repro, duplicate, stale Aug 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feedback required more info is needed, issue will be likely closed if it is not provided
Projects
None yet
Development

No branches or pull requests

10 participants