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

Add smoothness quest #3257

Closed
wants to merge 66 commits into from
Closed

Conversation

Helium314
Copy link
Collaborator

This is a very first draft of the smoothness quest, fixes #1630.

What is done so far are the basics, i.e. element selection and generating the answer form from surface and highway tags.
Adding images and descriptions for different smoothnesses is easy and can depend on highway and surface tags.

There are two other answers

  • one is supposed to tell the user to ignore small obstacles
  • one is to report that the images are shown for the wrong surface, and once implemented should remove the surface tag if if's wrong (like a similar other answer for the housenumber quest that changes the building to building=yes)

What is missing: basically all images and descriptions for answers. There are some in this first version, but it's just poor and barely suitable placeholders that need to be replaced.

Adding good images and text is a lot of work, so any help is appreciated (maybe by @rhhsm who did a lot on this topic on OSM wiki?).

Regarding the images I have some questions @westnordost

  • I started using surface_<type>_<smoothness>, to be in line with the existing surface_<type> from the surface quest. Is this ok, or do you prefer a separate naming scheme?
  • how do you generate the density versions? I didn't find such functionality in Android Studio
  • should the original images go somewhere in /res/graphics?
  • I can't decide between 2 or 3 images per row in the answer form. With 3, I fear it will be easier to miss relevant details. With 2, the answer form is really tall, and the existing surface image can't be used (just get padded with empty space). Do you have some recommendation on this?

Once the questions about the images have been clarified, I'll start adding images from links in #1630.

For the texts I still need need to do some more live testing to see which style is actually helping.
I tried imagining how it would be to go on specific parts of a road on a racing bike or inline skates, but I didn't find it very helpful...

@matkoniecz
Copy link
Member

matkoniecz commented Sep 4, 2021

how do you generate the density versions? I didn't find such functionality in Android Studio

I ended making https://github.com/matkoniecz/rescaling_for_android to solve that (there may be a better solution)

should the original images go somewhere in /res/graphics?

For openly licensed reused images (for example from Wikimedia Commons) it is fine to list them in authors file. See also paving stones image (I think) where original version is in the repo

and the existing surface image can't be used

You can locate originals using authors file and recrop them

@matkoniecz
Copy link
Member

Note that images should be openly licensed (sadly, some images uploaded to OSM Wiki have unclear licencing situation)

@westnordost
Copy link
Member

I started using surface_, to be in line with the existing surface from the surface quest. Is this ok, or do you prefer a separate naming scheme?

No preference.

how do you generate the density versions? I didn't find such functionality in Android Studio

Manually, using GIMP. I suggest you only first fill in the xxhdpi graphics and only as the last step before converting this as ready for review / ready to merge, do this step.

I can't decide between 2 or 3 images per row in the answer form. With 3, I fear it will be easier to miss relevant details. With 2, the answer form is really tall, and the existing surface image can't be used (just get padded with empty space). Do you have some recommendation on this?

Or maybe one per row? Like the building quest? Because someone mentioned that despite having pictures, we'd probably still need short descriptions.

@Helium314
Copy link
Collaborator Author

I suggest you only first fill in the xxhdpi graphics and only

Thanks for this hint, this is probably the most convenient way when frequently adjusting the images.

Or maybe one per row? Like the building quest? Because someone mentioned that despite having pictures, we'd probably still need short descriptions.

That was my initial attempt, and I didn't really like it.
But once I add some better images I'll try different number of items per row and share screenshots.

@Helium314
Copy link
Collaborator Author

Here are some images with 1, 2 and 3 images per row:
image

  • 1 image per row (half height): clearly shows the relevant details, but the answer form seems huge. Maybe height should be reduced further
  • 2 images per row (half height): description definitely takes up too much space
  • 2 images per row: not as clear as one image per row, but should be enough when optimizing images. Maybe height should be reduced by 20-30%
  • 3 images per row: much too small in my opinion

(the images were just taken as is from the wiki, and will likely be changed/optimized. Description is still the initial placeholders)

Some further thoughts:

  • The quest is for roads and paths, but maybe should be split into two quests like the surface quest. This way people can disable the one they are not interested in, and the icon color can be more consistent.
  • The question asked is "what is the smoothness of this path/road". While this is good for people who know the smoothness tag, it feels somewhat awkward. I consider changing this to something like surface quality... any opinions/ideas?

@westnordost
Copy link
Member

westnordost commented Sep 6, 2021

Ha cool, you used that icon I created ages ago (for another quest), I am glad that it now can be used for something!

The issue I see with all of them is that the text hides the most important parts of some of the graphic. Yeah, 3 per row is definitely too small. Another layout to try would be 2:1 images with text to the side.

I was also thinking that maybe it would be a good idea to include the localized tag value names in the description as well (excellent, very good, good etc)? So that users that tagged smoothness before know what to tap. And also so that users learn which image corresponds to which "value" when using other editors.

@westnordost
Copy link
Member

Description for the worst could maybe include potholes? The image just shows a "bumpy" road, but what's even more disruptive than that would be actual cracks, potholes etc. (Think of inline skaters, sports bikes with thin tyres)

@Helium314
Copy link
Collaborator Author

The issue I see with all of them is that the text hides the most important parts of some of the graphic. Yeah, 3 per row is definitely too small.

If I use the "full height" images (1:1 aspect ratio) I think they all have to be changed or at least cropped; the part on top is too far away to tell anything about the surface and the most useful part is covered by text.

The different sizes were mostly to find some layout, and then adjust/change images accordingly

Another layout to try would be 2:1 images with text to the side.

I just tried that, splitting text and image width 50/50. In my optinion the images still look too small.
If I make the images higher, the text area looks rather empty. Using more text to just fill it is probably not good, and making the images wider (taking 60-70% of the width) could lead to a bad text layout with single-word lines.

I'll try some 75% height images with 2 images per row and try more proper cropping (and replace the bad image).

I was also thinking that maybe it would be a good idea to include the localized tag value names in the description as well (excellent, very good, good etc)? So that users that tagged smoothness before know what to tap. And also so that users learn which image corresponds to which "value" when using other editors.

Alright, I'll add the value as the first line and stick with asking for smoothness.

@Helium314
Copy link
Collaborator Author

Next try with 75% height images:
next
I think the form looks good now, but 3 lines of text (in addition to smoothness value) might be too much.
Or at least the images need to be adjusted to show the relevant parts near the top instead of in the center.

I'll look for some more images that are taken more from a top perspective, at least for the bad and very bad images

@smichel17
Copy link
Member

smichel17 commented Sep 6, 2021

the part on top is too far away to tell anything about the surface and the most useful part is covered by text

Can the text be moved to the top?

the images were just taken as is from the wiki, and will likely be changed/optimized

To my layman's eye, the difference between Intermediate and Bad is much larger than any of the others. Maybe this is because of the number of problems pictured. If there is one Bad-sized pothole, does the surface qualify as Bad? Personally I'd probably put it as Intermediate if that was the only problem. Likewise, a road that's totally covered with Intermediate-sized cracks/gaps because your city keeps patching them year after year instead of re-paving like they need to (looking at you, Northampton public works department) would technically qualify for Intermediate, but I would consider in Bad condition.

In summary, in order to generate good data here, I think you will need to make it totally clear if I am measuring surface smoothness, like the question technically asks, or quality/level of maintenance, which is what the pictures are leading me to think.

@Helium314
Copy link
Collaborator Author

Can the text be moved to the top?

I think it might look a bit strange, and it's inconsistent with other quest forms, but I'll definitely give it a try

In summary, in order to generate good data here, I think you will need to make it totally clear I am measuring surface smoothness, like the question technically asks, or quality/level of maintenance, which is what the pictures are leading me to think.

Do you have an idea how to show this? For paving stones or sett it's easy, but I don't know any asphalt that would be rough by design.
Photos are always welcome, bad roads only show up when you're not looking for them...

@rhhsm you did some work regarding smoothness, do you have any comments on this?

@smichel17
Copy link
Member

Okay, I spent a little time reading through the linked issue and wiki pages. Here are some conclusions:

  • [Meta] This sort of discussion would be much better suited for a GitHub Discussion than an issue or PR. There are many tangents that would be helpful to discuss in their own threads. Perhaps in the future, feature requests should start as Discussions and we can make issues once there is not a concrete proposal for implementation.

  • I missed a word in my earlier comment, edited now. It should have read, "you will need to make it totally clear if I am measuring surface smoothness or quality/level of maintenance". As in, I was previously uncertain how I should answer and I was looking for clarification.

  • Having read through things now, I think I know the answer: The wiki says smoothness is about the physical usability of a way for wheeled vehicles, particularly regarding surface regularity/flatness. So, your challenge is to communicate that. In other words, the word "smoothness" is jargon; it has a particular definition that is close to, but not the same as, the English definition of "smoothness". You need to keep in mind that the audience only knows the English definition, and make sure the question does not accidentally rely on knowing the jargon definition for context.

    • Concrete suggestion: Rewrite the text without using the word "smoothness" and see if it still makes sense. "Rough[ness]" might be a good substitute.
  • On asphalt in particular, it seems like surface smoothness is roughly equivalent to how well maintained it is. As you say, asphalt that is rough by design is rare. (Although, one short road near me was recently re-paved paved over and they did a really poor job of steamrolling it, so I would call it "good", not "excellent".)

  • Most of my confusion came from those pictures being difficult to parse at small resolution. In particular, in the Bad image, the big patch just above and to the right of the word "bad" looks much bigger than it is, and the extent of damage in Intermediate is difficult to tell.

  • "Would a car slow down to go over it?" is kind of subjective, because it depends how fast the car was going in the first place. There are residential roads where I'm only going around 20mph (30-35 kph) and I wouldn't slow down further, it would just be bumpy. But if I were going 10mph faster, I'd probably slow down.

  • Although it makes the form large, I think it would be best to have each entry take up the full width of the form. But I like @westnordost's suggestion of having the image on only half of the entry, with text to the side. This should also give enough room to add additional text.

    • In particular, I think both cars and bikes should be mentioned, since thinking about it from a biking perspective makes these answers clearer to me. It's something like, on a road bike:

      • Excellent = ideal
      • Good = a little less pleasant to ride on, but minimal impact; they're not going to slow me down or give me bruises if my bike has a hard seat.
      • Intermediate = unpleasant to ride on, and I'll probably have to work a little harder (especially if I'm carrying groceries or something) but I'm probably not going to change my route unless there's an equally direct alternative.
      • Bad = Very unpleasant to ride on, slows me down. If there's no cars, I'm probably using the full width of the road to find the least-bumpy surface to ride over. I'll take a somewhat longer route to avoid roads like this.
      • Very Bad = Either impossible to ride on, or I need to use the full width of the road (e.g. to avoid potholes).

      Of course, these are very long descriptions which must be shortened, I'm just trying to explain how I currently understand the categories.

@smichel17
Copy link
Member

/cc @mnalis @cyclingcat, maybe you can confirm those descriptions above and help boil them down to just the characteristics which should be included in the text?

@rhhsm
Copy link

rhhsm commented Sep 8, 2021

@Helium314 keep up the good work! Some ideas:

  • encourage users to go to the wiki on smoothness, for instance by providing a link somewhere prominent
  • when selecting an answer, to show the picture full screen, and ask for confirmation. Maybe this should be done a limited number of times as it would be irritating for experienced users
  • as suggested earlier, to create a small "exam" that users have to pass before this quest can be activated

If you need more photos, especially of unpaved roads, I have a collection that might be interesting. Let me know!

@westnordost
Copy link
Member

westnordost commented Sep 8, 2021 via email

@Helium314
Copy link
Collaborator Author

Although it makes the form large, I think it would be best to have each entry take up the full width of the form. But I like @westnordost's suggestion of having the image on only half of the entry, with text to the side. This should also give enough room to add additional text.

I gave it another try, with the image taking a bit more than half of the width. The form is quite high, but images are large and there is enough space for descriptions.
new_form

Concrete suggestion: Rewrite the text without using the word "smoothness" and see if it still makes sense. "Rough[ness]" might be a good substitute.

Roughness doesn't fit with @westnordost's comment

I was also thinking that maybe it would be a good idea to include the localized tag value names in the description as well (excellent, very good, good etc)? So that users that tagged smoothness before know what to tap. And also so that users learn which image corresponds to which "value" when using other editors.

Maybe asking "surface quality" would be ok?


(Although, one short road near me was recently re-paved paved over and they did a really poor job of steamrolling it, so I would call it "good", not "excellent".)

Now that I'm frequently checking surfaces I also found such rough asphalt, I'll try to add it to the good description

In particular, I think both cars and bikes should be mentioned, since thinking about it from a biking perspective makes these answers clearer to me. It's something like, on a road bike:

Using both makes the text considerably longer. I would perfer limiting the text to cars when asking about roads and mention bicycles / wheelchairs / ... only when asking about paths.

@westnordost
Copy link
Member

How do you like this layout?

@Helium314
Copy link
Collaborator Author

It's a bit tall in my opinion, but I think images are much clearer than with 2 images per row. The only other attempt where details were similarly visible (or even a bit better) was with on full width image per row.
So I think it's ok.

@westnordost
Copy link
Member

I also think it's nice. The horizontal padding is quite big, it could be reduced (or be zero?), then the image ratio could be wider so it does not that tall.

I think for the details (the cracks etc) to be well-visible, you'd need to zoom out a bit. Currently, it's quite a close-up of the street, so it is difficult to see a variety of repairs and cracks.
F.e. if the below is the original image and the red rectangle is the cropped version, one could either take a crop further down the road (green) or take a bigger section and make it smaller (blue).

image

I am saying this because for all the images, a sense of scale is missing. You don't really know how big the cracks and repairs are that are pictured. Additionally, the "good" road looks smoother than "excellent", probably because the latter is zoomed in more?

@Helium314
Copy link
Collaborator Author

Thanks, I plan on updating/replacing the images anyway and will consider this (and maybe cut off a little height).

I just updated the descriptions, see https://github.com/streetcomplete/StreetComplete/pull/3257/files#diff-5e01f7d37a66e4ca03deefc205d8e7008661cdd0284a05aaba1858e6b7bf9103
From the string title the smoothness and if applicable the surface and highway type can be read.
Based on this it should be easier to discuss specific unclarities / problems in the descriptions.

Currently I only have descriptions and images for paving_stones, sett, asphalt and compacted, but would like to add some more surfaces.
Especially the very common surfaces like unpaved, ground, gravel, dirt should be added, and maybe concrete (but this may be more complicated because of concrete:lanes and concrete:plates often being tagged as concrete).
But I think it isn't necessary to add everything from the start, more surfaces can easily be added to this quest.

@westnordost there is a dialog that checks whether the surface is correct, like the building type can be checked when adding a house number.
I adjusted cell_labeled_image_select.xml so it would be shown correctly in the check dialog. Is this change ok, or might it mess up something else? The surface select dialog still looks like before the change.
(and I just noticed Android Studio automatically changed more of this file, will undo the indent change if you want)

@westnordost
Copy link
Member

unpaved is a little difficult, because it is so generic (some people map anything that is not paved as unpaved, i.e. also anything "ground"). Same problem with "ground", I figure.

@westnordost
Copy link
Member

I adjusted cell_labeled_image_select.xml so it would be shown correctly in the check dialog. Is this change ok, or might it mess up something else? The surface select dialog still looks like before the change.

Not sure what you mean. What dialog? What exactly do you want to do? You can see where else the layout you named is used by right clicking on it -> find references

@Helium314
Copy link
Collaborator Author

Not sure what you mean. What dialog? What exactly do you want to do? You can see where else the layout you named is used by right clicking on it -> find references

See my other answers from first post::
The quest has an "images are shown for the wrong surface" other answer which shows a dialog asking to confirm the surface.
The layout is copied from dialog_quest_address_no_housenumber, but uses cell_labeled_image_select to show the currently tagged value instead of cell_labeled_icon_select_with_description.
When using the unmodified cell_labeled_image_select, the dialog layout is broken. With modification it looks like I intended:
Screenshot_20210911_071654

unpaved is a little difficult, because it is so generic (some people map anything that is not paved as unpaved, i.e. also anything "ground"). Same problem with "ground", I figure.

Yes, that's a good point. But unpaved is used very often... 2nd place after asphalt according to taginfo.
Maybe unpaved could be treated like compacted when showing strings and images. I guess in many cases it wouldn't look much different, and if the diplayed surface is clearly wrong the user could use above other answer and provide a more specific surface.

Anyway, I think the code is ready for review now. Most of the necessary changes concern images and strings.

@Helium314 Helium314 marked this pull request as ready for review September 11, 2021 06:09
@westnordost
Copy link
Member

@Helium314 could you put your source pictures in a dropbox, google, nextcloud or something?

@Helium314
Copy link
Collaborator Author

@Helium314 could you put your source pictures in a dropbox, google, nextcloud or something?

Is it ok if I just upload them in a zip here, or do you need some url for authors.txt?

@westnordost
Copy link
Member

Yeah it would be better if there was an url we can link to

@Helium314
Copy link
Collaborator Author

https://cloud.disroot.org/s/bWCMMSGigAR7k8s

@westnordost
Copy link
Member

I intend to use some pictures from your colleciton, @mcliquid. Under which license may your photos be used?

@mcliquid
Copy link
Contributor

mcliquid commented Jan 2, 2022

I intend to use some pictures from your colleciton, @mcliquid. Under which license may your photos be used?

@westnordost Whatever fits best for the use in StreetComplete. Or what's the standard?

@westnordost
Copy link
Member

@mcliquid Anything CC-BY-SA or CC-BY or CC-0 (public domain) , latest version, is fine.

@smichel17
Copy link
Member

2¢: I like CC-BY-SA, as it requires any modified versions to be distributed under the same license, whereas the other options allow someone to close off their modified version.

@westnordost
Copy link
Member

I summarized all the discussions, decisions made etc. in a new PR #3617. Please, all, have a look at that! The PR is about finished from my side, just waiting for feedback.

@mcliquid
Copy link
Contributor

mcliquid commented Jan 3, 2022

@westnordost CC-BY-SA seems fine for me too. Should I change or add something in m Google Drive folder?

@westnordost
Copy link
Member

No, it's fine, thank you!

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

Successfully merging this pull request may close these issues.

new Quest: surface smoothness