-
-
Notifications
You must be signed in to change notification settings - Fork 358
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 a "Complete StreetComplete" Question #783
Conversation
I'd say:
|
Yes, if the user answered a question, all other quests for this type are hidden and no new quests of this type will be downloaded
I agree, this is a good idea, but I think it is hard to implement, isn't it?
No, not yet... But is it worth the effort? I mean, is it wrong data, if only a small amount of users made a mistake? But nevertheless it would be doable... |
Likely depends on the previous point… you might also just collect the "reverts" and save them separately, so you'll see how often it is used or so. (don't know whether that is useful, though)
The "outside of the quest icon" could be hard, but don't ask me. If it is too hard, you can always just modify the quest icon… |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just some notes…
app/src/main/java/de/westnordost/streetcomplete/ApplicationConstants.java
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/data/QuestController.java
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/data/QuestController.java
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/data/QuestController.java
Outdated
Show resolved
Hide resolved
app/src/main/java/de/westnordost/streetcomplete/data/complete/CompleteTypes.java
Outdated
Show resolved
Hide resolved
You are starting things too fast. I am honestly not sure if I want to have this kind of thing at all in the app. How about you bring the other projects you started to a close first? |
Actually I think this feature is really awesome. I like how it is implemented (just as simply as every other StreetComplete quest), but I agree we do not need to rush here. Especially as this PR changes the concept of "serverless" StreetComplete app, but – on the other hand – with the Mapzen shutdown, we do also have this problem, so in the long-term you may need a server anyway. But just an important point for this PR: Do not ask "What is common in your country?", but rather "What is common in this country/here?" as StreetComplete users can also be visitors of other countries. |
I think if there should be some kind of survey, it should be implemented from a completely different angle. There is no need to (mis-)use the whole quest system for that, because that really overcomplicates things. It is not necessary to
Here is a better approach:
The concept is very much like this https://github.com/AndreiD/surveylib but it can be simpler in some aspects I think but must be more complex in others. Additional notes:
Perhaps even surveylib itself could be used for that, I did not have a deeper look into his code there, whether it is of good quality. But it has no tests. |
Okay, so, I agree it is really a good idea:
But:
BTW: As for how common a thing is, you may also offer users a selection as it can commonly found in surveys. (Select on a range of 1 to 5 – with a slider). TL;DR: I really like showing it on the map from a UX perspective. It is inside of the user's workflow, it is deeply integrated into the app, it is unobtrusive and does not need yet another button. However, I understand that for the results, it may be better, if anyone can answer these questions. So why not do both? Allow users to answer them (on a website and/or in the app) and notice them when they are near of such an item, so that they can be "nudged" into answering the question. |
I agree! This can be all done by the backend.
I did this just because I thought that the user could really go to a place where this feature exists and confirm how something is made in his country...
But if the user has to go to a specific feature where he maybe has no internet connection, this is essential...
On the map or in the menu?
Mmhh yes, I think it could be done similar to this project (e.g. having a JSON file on a server and the app has to display it accordingly) but I would not use this library as it does not seem to offer the ability to upload pictures, which is also sometimes very helpful.
We can also reduce the priority for this quests to the lowest... So it does not scare off new users who might expect to answer OSM-related questions and no StreetComplete-related questions... |
Yes, it is a nice gimmick, it's more immersed in the app this way. But, code is a liability. I want to keep the app as simple as possible and I do not think it is worth the added complexity.
Not sure when this would be useful for asking for the prevalence of features in a certain country. But anyway, in my opinion first the tags2names project should be led to a conclusion to know if this kind of osm-element-referring method of surveying would be used also by that project or if that project would use a different data source (wikidata or normal crowdsourced translation). |
From my point of view, this is already finished. The map style contains all necessary elements (buildings, roads, labels, housenumbers, etc...) and if something should be missing it can be added afterwards... And the issues which still exist are IMO only not that important ones which would block the implementation of this stylesheet... Except streetcomplete/streetcomplete-mapstyle#8 which might need some adjustment... Sorry for don't informing you about the state of this project... |
If you want to, I can create a PR for implementing the mapstyles... |
I'd want to play around with the colors a bit, I think many users may be put off by the (too) playful and too Pokemon-alike colors. And I guess I would better make this in your repos then make adaptions to the stylesheet after import from your repos. |
Go ahead! You can open the mapstyle in Tangram Play here
OK. I agree. I will close this and implement this another time... |
I've got one more question: |
It's already possible. See CountryBoundaries.
Am 25. Januar 2018 17:06:50 MEZ schrieb ENT8R <[email protected]>:
…I've got one more question:
If I am going to implement this feature as a simple list, how can we
determine in which country the user is? Using Overpass you could get
the country of the user by the coordinates of the element...
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#783 (comment)
--
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
|
But this would only work if the user has GPS enabled, right? |
See also #798 |
As you might know I already wrote a backend for this (see https://github.com/ENT8R/CompleteStreetComplete) and now I just wanted to implement the frontend for this special type of question!
This new kind of quest is pretty similar to the normal OsmQuest except that the answer will not be uploaded to the OSM server but to the backend that I wrote for this purpose. With this quest it will be totally easy to get country specific metadata for existing or future quests 🎉
I already implemented two quests (one for tactile pavings (see #750) and another for post box collection times (see #85))
The position of the quests is downloaded via overpass so the user can e.g. look whether a post box in his country has really collection times... Once a question is answered, all other quests of the same type automatically disappear so the user can't answer one question multiple times. The answer is currently uploaded to my testing instance at https://ent8r.lima-city.de/CompleteStreetComplete/
But if you have access to a server with PHP, you can of course simply create your own instance!
A question can for example look like this:
As you might see in the screenshot, the geometry of the element is not loaded... The geometry is not saved to the database too but I have absolutely no idea why... (see this code)
Another thing I am not sure about is, whether this code is necessary at all...
BTW: This PR would fix #633