Closed TurnrDev closed 1 year ago
I'm happy to make this change, but would this be accepted?
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.
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?
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?
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).
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).
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.
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
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).
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
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).
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) .
(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.
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)
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).
(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):
allow to check for country of the quest in elementFilter so special filters could be implemented for UK
. (it needs new functionality to be written as prerequisite, though: https://github.com/streetcomplete/StreetComplete/issues/4528)
split the Smoking quest into two quests, one for UK
(and similar countries if later reported), and one for the rest of the world. (it has obvious maintenance increase implications, though, and opens untidy precedent for other quests to follow. And quest selector would confuse users too by having two smoking quests)
do nothing, if "disabled by default" is deemed good enough not to be spammy to vast majority (it may make people who manually enable it and travel often and do not wish to use presets feel spammed, though. This is still my personal favorite, because):
43%
of smoking=outside
, so that answer at least should remain alwayssmoking=separate
, so that answer should remain there at least.~70%
of amenity=pub
also wanted/had smoking=separate
in England, so unless that changed drastically, quest with possible smoking=separate
answer should be shown there too (even when they don't qualify for smoking=yes
).UK
which seems to have banned only the smoking=yes
answer) .disable the smoking quest unconditionally in UK for all users, even if they want to enable this disabled_bydefault quest (Statistics show that only about 52%
of the OSM tags are smoking=no
there, and all other allow some sort of smoking. This is the one I personally am heavily against, as it seems mapping smoking
tag is quite relevant in UK
despite the "no unrestricted smoking inside"_ ban )
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?
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
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]
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.
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!
Yes, talk-gb
seems clear so far. What I think could be done to improve the smoking quest
:
remove all answers except smoking=no
and smoking=outside
when quest is in GB
(and possibly other counties in the future that discuss the subject in their local communication channel and submit the request), in order to limit users from submitting illegal answers (and reduce their possible confusion).
It would need code to access the country of the quest from SmokingAllowedForm context (hopefully not too complex for someone who is more intimate with SC code than me)
GB
, limit the showing of the smoking quest but only for amenities that are likely to not have "outside standing smoking areas" (not to be confused with "outside seating areas"!)So, in countries like UK
, it would only show the smoking quest for amenity=fast_food
only if it also has outdoor_seating=yes
, but it would show the quest for amenity=nightclub
even if it has outdoor_seating=no
.
It would need elementFilter
parser support in readable and reusable form like suggested in https://github.com/streetcomplete/StreetComplete/issues/4528. If something like that is implemented, I'd be happy to update smoking quest elementFilter
specific rules to accomodate that.
If option(s) above are implemented, we also need to update the test code in AddSmokingTest.kt to cover UK-alike situations as well as existing ones; with ample comments. Luckily, the country support for automated tests seems to already be available, so I could probably offer help there too.
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.
Sounds good and fair
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:
smoking=
in the country and the proportion of those which are not no
or outside
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.
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:
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?
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.
Smoking indoors is illegal in the UK, so this quest is rather spammy as all indoor places would automatically be "No".