streetcomplete / StreetComplete

Easy to use OpenStreetMap editor for Android
https://streetcomplete.app
GNU General Public License v3.0
3.87k stars 353 forks source link

Disable "Does this place allow smoking?" quest in the UK (GB) #4518

Closed TurnrDev closed 1 year ago

TurnrDev commented 1 year ago

Smoking indoors is illegal in the UK, so this quest is rather spammy as all indoor places would automatically be "No".

TurnrDev commented 1 year ago

I'm happy to make this change, but would this be accepted?

Helium314 commented 1 year ago

I had also asked for this (#3856), but the quest will not be disabled on a per-country base because it's disabled by default.

matkoniecz commented 1 year ago

It is possible in the future to disable the quest completely for certain countries where we know 100% that smoking is not allowed anywhere in public places.

https://github.com/streetcomplete/StreetComplete/issues/3856#issuecomment-1064629471

It can be disabled by default and in addition blocked in some specific countries.

indoor places would automatically be "No".

What about outdoor ones?

mnalis commented 1 year ago

My reasoning (as the quest author) was that it was already disabled by default for everybody, and that people who do not want to be spammed should/would not manually enable something that they know would spam them.

Just like if there are (for example) no special Kosher places in the country, people would not go manually enable Kosher quest (which is disabled by default) and than afterwards complain that Kosher quest (which they willingly and manually enabled) is spamming them. (I mean, it's not like once manually enabled they can never turn it off again! If you expended effort to turn it on against the default; you can also expend effort to turn it off once you find out you do not actually want it)

It can be disabled by default and in addition blocked in some specific countries.

Technically it can. But especially since the default already does what people expect (i.e. quest disabled meaning no-spamming), I find it bad idea to needlessly take the choice away from the people (e.g. forbid them from temporarily enabling the quest if they do find there is some rare specialized Kosher restaurant in some neighborhood - especially if people take the time to manually temporarily enable some quest because they feel that such rare answers are worth much more than if they were common)


TL;DR - Just don't go manually enabling quests you don't want to answer, eh?

mnalis commented 1 year ago

Most notably, according to UK taginfo it seems that in UK there is only about 52% of smoking=no answers tagged -- the rest are some variant of allowed smoking (mostly smoking=outside at about 43%)

According to that statistics, it seems to me that the smoking quest is quite useful in UK (as there is no value which is highly predominant, there is nothing that could be assumed "the default value" if smoking=* tag is not specified).

mnalis commented 1 year ago

I guess what could be done is reduce 4-answer smoking quest to 3-answer smoking quest in UK, but I do not see any sense in doing that (i.e. removing only Yes, everywhere => smoking=yes answer).

Assuming that research shows that `0.73%` of `smoking=yes` tags existing in UK today are unupdated answers from times past, and not some kind of special-case-exceptions), it might technically be possible to code such special reduced-number-of-answers quests (if someone wants to spend their time doing that - I myself certainly don't). That would however need special code (probably should be written in a way that can be updated to other countries and other quests), and would make this and other quests like this (`kosher`, `halal`, ...) more complex to read and to maintain. But I do not see why one would like to introduce such specific code complications for **no gain at all**, as even if it were implemented, `UK` users who manually enable `smoking` quests, would still be shown exactly the same number of smoking quests, so the spam level would remain exactly the same for them, so the premise of this issue (i.e. that is would _somehow_ solve `smoking quest is rather spammy (in UK)`) is incorrect. The only microscopic gain would that I see is that the users then would be unable to choose one obviously incorrect answer (but we already kinda **depend** on the users answering quests **correctly and truthfully** -- for all quests !) Unless I'm missing something huge, that does not seem like a good tradeoff to me.
Helium314 commented 1 year ago

TL;DR - Just don't go manually enabling quests you don't want to answer, eh?

This is still the same absurd argumentation as before. You assume people are either not travelling at all, or should create per-country presets because of a single quest. StreetComplete is already taking choice from people, e.g. by limiting the (disabled by default) cash quest to specific countries. Or by mostly not asking the (disabled by default) roof shape quest if roofs are usually flat in a country.

TurnrDev commented 1 year ago

TL;DR - Just don't go manually enabling quests you don't want to answer, eh?

This is still the same absurd argumentation as before. You assume people are either not travelling at all, or should create per-country presets because of a single quest. StreetComplete is already taking choice from people, e.g. by limiting the (disabled by default) cash quest to specific countries. Or by mostly not asking the (disabled by default) roof shape quest if roofs are usually flat in a country.

Well said, all the reasons to not disable this quest in the UK seem to counter the reasons to enable the cash quest in the UK #4517

Helium314 commented 1 year ago

Actually I think there is no need to disable it entirely in UK, as the spammy part can be avoided with country-dependent element selection (only ask if outdoor_seating and outdoor_seating != no in UK).

TurnrDev commented 1 year ago

That does seem like a good solution! There's even a map of which countries ban smoking indoors, which we can use: https://en.wikipedia.org/wiki/List_of_smoking_bans

mnalis commented 1 year ago

Actually I think there is no need to disable it entirely in UK, as the spammy part can be avoided with country-dependent element selection (only ask if outdoor_seating and outdoor_seating != no in UK).

Somewhat similar idea has been discussed before, e.g. https://github.com/streetcomplete/StreetComplete/pull/3865#issuecomment-1064696305 where @peternewman noted specific exception:

In the UK at least it's quite common, particular outside nightclubs, to have a small fenced area where people can smoke without having to leave the area the club controls (and pay for a new ticket etc). This fenced area is often on the pavement and may not have seating, which might break your current logic here.

See some average to rubbish photos of the like here: https://www.vice.com/en/article/z3xwa4/this-is-what-englands-nightclub-smoking-areas-looked-like-last-night

The linked Vice article also seems to indicate that night clubs at least do seem to have "separate nightclub smoking areas" (which is one of the answers offered by smoking quest too Only in separated areas). Or do you @TurnrDev have information that such smoking areas in pay-to-enter venues like nightclubs have been abolished since last year?

So I guess pay-to-enter amenities (like amenity ~ nightclub|stripclub) should still be asked regardless of outdoor_seating, even in UK.

But other than that, I guess _"require outdoorseating for many/most amenities in UK" @Helium314 idea might work. (Although I still think it would benefit by being asked about in some UK communication channel, as there might be more unforeseen exceptions which are obvious to some UK people, but not to me).

mnalis commented 1 year ago

That does seem like a good solution! There's even a map of which countries ban smoking indoors, which we can use: https://en.wikipedia.org/wiki/List_of_smoking_bans

That wiki page in specific, however, I would heavily advise against. I'd much prefer someone on the ground who also has knowledge / has researched the situation (like @TurnrDev in UK), or preferably few of them (e.g. after local communication group discussion?) to open an issue.

For example, for my little part of the Europe I semi-regularly visit, there is at least 75% of incorrect data there (i.e. wikipedia mismatching reality). And even for parts that are factually correct, it is extremely hard to parse (i.e. it requires a huge amount of work to get from that wiki to a table of country|smoking_inside_allowed|smoking_outside_allowed values, even in cases where the exceptions do not make such a list impossible) .

Examples For example, Croatia and Bosnia and Herzegovina are flat out wrong. Some laws mentioned were repelled or amended so significantly that initial _"very few can choose to make their amenity exempt to ban"_ became _"almost everyone can (and majority do!) choose to be exempt to smoking ban"_. I am pretty sure that the same situation is in Serbia, although I haven't been there for few years, but that wikipedia page citations for it are even older (2010). Slovenia, on the other hand, seems (at least) not blatantly incorrect in my limited experience. If correct however, it would still probably not help much with SC `smoking` quest though, as `smoking=separated` and `smoking=outside` answers would need to stay (i.e. only `smoking=yes` answer may be removed), even if Slovenia itself is mostly anti-smoking. There is no filter I can think of that could use that wikipedia article to limit the number or smoking quests asked there. While I have not done _extensive_ research by any means, it is my guess that many countries (even if it could be found which are not outdated or otherwise factually incorrect, which is quite a job in itself) would be in similar situations where the answer whether smoking **may** be possible at some place **cannot be determined** purely from OSM tags and wikipedia data.
matkoniecz commented 1 year ago

(only ask if outdoor_seating and outdoor_seating != no in UK).

That would require adding extra feature or splitting into separate quests, both are problematic.

mnalis commented 1 year ago

That would require adding extra feature or splitting into separate quests, both are problematic.

That is true, especially splitting the quest into two seems like a very bad idea to me.

But, extra feature / function like and isQuestInCountry(UK,SE) which could be used inside elementFilter might conceivably be used in other quests as needed (provided someone volunteers to write it and it is deemed acceptable / not kludgy, of course).

AFAIK, SC does not currently have anything like that, though (we only have operators and tags in elementFilter currently, right?). Is so, perhaps instead of a "function", a virtual tag like __QUEST_IS_IN_COUNTRY (which has value like UK or DE etc.) might be invented, and then normal operators might be used on it, e.g.:

elementFilter = """
  amenity ~ nightclub|stripclub 
  or amenity ~ restaurant|pub|bar and  (outdoor_seating != no or __QUEST_IS_IN_COUNTRY !~ UK|SE)
  and (!smoking or smoking older today -8 years) 
 [...]

I've move that discussion to separate feature request https://github.com/streetcomplete/StreetComplete/issues/4528, as it may be used in other places too, and not to stretch this issue in too much directions.

Although, it might lead to quite complex elementFilter values though (example above is just a small grossly oversimplified chunk of smoking quest filter, to illustrate the possible usage if something like that were to be implemented)

mnalis commented 1 year ago

Devoting some more time to investigate the wikipedia articles on the matter, I have a question for @TurnrDev (and other UK citizens). https://en.wikipedia.org/wiki/Smoking_ban_in_England#Reaction_to_the_ban says:

In 2012, it was reported that "Five years after the introduction of the smoking ban in England, almost seven out of 10 licensees want the legislation amended to allow for separate smoking rooms in pubs".

Unfortunately, wikipedia article does not reference newer statistics since 2012. Do you have links to reference newer statistics? Because, if the information from 2012. citing 70% of pubs wanting smoking=separate has not changed drastically, it seems quite a good reason to retain the quest in England at least for smoking=outside and smoking=separate answers (i.e. making only the smoking=yes answer irrelevant).

mnalis commented 1 year ago

Summary of all options so far

(for those not wanting to read whole thread, so it can be linked to. I'll update it if I see other options become available, and/or people mention me to update it):

TurnrDev commented 1 year ago

Under UK law, smoking=seperated is still prohibited, so I imagine any tags with that probably mean smoking=outside or are outdated information?

Also, do we implement smoking=isolated like the Wiki mentions or did we skip it for its low usage?

TurnrDev commented 1 year ago

In the meantime, I'll set up a challenge on MapRoulette to check the usage of anything other than smoking=no and smoking=outside in the UK

Helium314 commented 1 year ago

How to only ask if there is outdoor seating: https://github.com/streetcomplete/StreetComplete/commit/25bb3f853344a2f1b77c4b5f69a991752989c90c Just needed to change the quest to use OsmElementQuestType and copy some code from cycleway quest. (this is untested, and will not compile due to QuestsModule being unchanged)

[edit: tested and works after adjusting QuestsModule]

mnalis commented 1 year ago

Under UK law, smoking=seperated is still prohibited, so I imagine any tags with that probably mean smoking=outside or are outdated information?

Also, do we implement smoking=isolated like the Wiki mentions or did we skip it for its low usage?

@TurnrDev It was initially implemented, but then removed due to feedback that the users would be confused by only slight differences between separated and isolated (i.e. as nothing in practice is really 100% isolated, even opening the doors of "fully isolated room" would allow some smoke to escape, so it is technically then all just various grades of separated and never really isolated - as you won't have dual-door airlock chamber with vacuum pumps in most nightclubs and pubs).

So it was deemed that isolated was just a specific (more rigid) case of separated and that the differences are quite subjective and gradual instead of a clear cut - so that Only in separated areas answer would support both (but always marking as more generic / less precise smoking=separated). So you might treat both separated and isolated as the same thing - some area where smoking is allowed near some other area where smoking is not allowed, with wide range of possibility of smoke escape (0.1% to 99%) from one to the other.

So I guess when the mentioned example article https://www.vice.com/en/article/z3xwa4/this-is-what-englands-nightclub-smoking-areas-looked-like-last-night says:

Anyway, for reasons related to a virus, we've not had access to nightclub smoking areas for quite some time now – or, at least, not constant access. It's been sporadic at best

that "sporadic access to nightclub smoking areas due to virus" was taking more about smoking=isolated (which it seems still exist in UK - or at least did a year ago), and the pictures there are showing them at smoking=outside (even if there is no outside seating, just standing in case of nightclubs and similar amenities)

I've also asked for feedback about it at talk-gb mailing list.

But, as noted, SC does not distinguish between isolated and separated, so its Only in separated areas is intentionally designed to cover both cases.

peternewman commented 1 year ago

So I guess when the mentioned example article https://www.vice.com/en/article/z3xwa4/this-is-what-englands-nightclub-smoking-areas-looked-like-last-night says:

Anyway, for reasons related to a virus, we've not had access to nightclub smoking areas for quite some time now – or, at least, not constant access. It's been sporadic at best

that "sporadic access to nightclub smoking areas due to virus" was taking more about smoking=isolated (which it seems still exist in UK - or at least did a year ago), and the pictures there are showing them at smoking=outside (even if there is no outside seating, just standing in case of nightclubs and similar amenities)

This is probably getting a bit OT, but no, it doesn't mean that @mnalis . In the UK, for large parts of the Coronavirus pandemic, nightclubs were one of a small number of types of businesses which were legally banned from operating, so with no nightclubs, there was no access to their outside smoking areas either (or at least as far as I'm aware no-one bothered to gather at them when large gatherings weren't also illegal).

As talk-gb mentioned, in nearly all cases we should be mapping it's outside or no due to the law!

mnalis commented 1 year ago

Yes, talk-gb seems clear so far. What I think could be done to improve the smoking quest:

westnordost commented 1 year ago

Uhm, a lot of discussion here, given this is a quest disabled by default. I do absolutely think that it is not worth investing much effort into this. I'd argue the same as @mnalis a bit further up in this thread - it's very similar as for the Kosher quest.

I've peeked at @Helium314 's implementation and while this might be ideal, it comes with a rat-tail of having to research the (changing) smoking legislation for all the countries as GB is clearly not the only country with (partial) smoking bans. After all, a specific GB implementation will solve this ticket, but unless researched for all, up to more than 200 tickets may theoretically follow. So that's why I wrote. Let's stop right here. It is just not worth the effort.

TurnrDev commented 1 year ago

Sounds good and fair

wetneb commented 6 months ago

I have started doing more research about this, to find out where it would make sense to enable the quest by default. My methodology is as follows:

Do you see any way to improve this process? I think this information could be used in other places than SC, for instance in other apps that let view or edit OSM data (to only show this field when relevant).

I am not sure if it is currently possible to mark a SC quest as being "enabled by default only in certain countries", still leaving the option to users to turn it on or off as they please. But intuitively it shouldn't be too hard to add.

With this approach, the options offered by the quest would not change depending on the country, which would keep the complexity of the quest manageable.

westnordost commented 6 months ago

There might be a misunderstanding here. It is not possible in StreetComplete to enable a quest by default only in certain countries. There are two mechanisms available:

wetneb commented 6 months ago

Yes that's what I was suspecting (as mentioned above). Would you consider having the smoking quest enabled by default if it were only available in white-listed countries where we have checked that it is useful?

westnordost commented 6 months ago

I am not sure... probably not... after all, e.g. the halal quest is also disabled by default but available in any country if the user really wants to survey that. For smoking, e.g. in Germany, it is allowed only in a small fraction of establishments, still if someone wants to survey all that, the quest should not be not available to him at all.

Also, anyway, I guess oftentimes it is actually necessary to go inside to find out if smoking is allowed or not, and that is already one reason why the quest is disabled by default.