-
Notifications
You must be signed in to change notification settings - Fork 0
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
Survey Modal Form Component #279
Comments
Here are some sample questions I put together. Feel free to suggest any changes--those of you who have been working on this will have a better idea of what would be valuable for us to know. “Why did you visit data.TNRIS.org today?” “Were you able to find what you were looking for?” “How would you rate data.TNRIS.org on the following:” (1 – 5) “Do you agree with the following:” (yes/no/not sure) "How can we improve data.tnris.org? Send us your ideas and suggestions." Demographics "Which of the following best describes you:" "Which browser are you using?" "Would you be willing to participate in a follow-up interview so we can learn about your experiences more in-depth?" |
Other ideas that would be nice to implement if we can: -Having the survey pop up after a set amount of time (90-120 seconds?) would make sure the user had time to click around and they're not being asked to fill out a survey before even using the site. (Average session time is about 4 minutes according to Google Analytics) -If we can have a progress indicator at the bottom of the survey it can encourage completion. |
I think the local storage idea is a great choice for persisting data about participation. You mentioned it in your original post, but I think tracking using the Events function from 'react-ga' could help determine if there are duplicate survey responses as well (if, for example, a user clears their browser cache). We could also use the event to cross reference survey responses with the user's activity on the website ( are they returning users, etc. ). |
i just discovered another state agency, the texas parks and wildlife department, is currently doing something similar to what we are looking to do with this issue. it's a different way to accomplish the same goal, and thought it was interesting to share. looks like they are using a third party or atleast a different software package to provide instructions to the user to see how quickly they can find a certain topic on the home page (i think the home page shown in the survey is a new design because the current one looks different). the software they use looks to just log the click location on an image or maybe a grid overlaying the image, not sure. tpwd home page - https://tpwd.texas.gov
survey url - https://tpwd.optimalworkshop.com/chalkmark/homepageherodeskb20
|
Great find @jwhaney! I like the way TPWD has done this. I went through it and found it to be very clear and not that much of a burden. It didn't take much time at all. I liked that the box to link out to the survey was non intrusive and in the lower right of the view. Interestingly, after agreeing to help and completing the activity the option is no longer visible to me when I visit the homepage. Similar to discussions we have had they are using local storage to track that I have chosen to help out or dismissed the idea. |
This example is great. Optimal Workshop has some really good tools (including surveys) for collecting data on how users interact with your site/app. It's kind of expensive though ($166/user per month) I found another tool (SurveyJS) which might help with what we're trying to do. Looks like it's completely free and you can use it to create a survey it gives you the code to embed. |
I think taking the user to an external webpage might be a lot easier. In my time at the iSchool, we used Qualtrics. Not sure if we have a free subscription as a state agency, but at UT everybody received free Qualtrics accounts for research. I took a look at @Ldsmiths recommendation above and SurveyJS seems pretty cool. It serializes forms from JSON . Wondering if we could design an API endpoint that replicates their forms schema, create forms using the Django admin, and then use the serializers provided by SurveyJS to render in React. The second option is a lot to maintain, though. I think the question here is whether it is worth it to develop an entire survey app, or should we just use the timed modal option to link out to an external resource |
Referencing my comment made previously, I think another potential solution would be to generate surveys using the SurveyJS website and then copy the serialized JSON directly to our survey endpoint rather than replicating the entire SurveyJS schema in the Django Models. That way the Django admin would have a Surveys entity which has only fields like survey name and survey JSON.
|
the more i think about this, the more i like the idea of using a third party service like SurveyJS maybe. whatever service we use, we'd like to figure out a free or cheap option. we'll need to discuss the pros and cons of using an easy third party service that may cost money versus a custom in-house developed survey solution that will require more maintenance. |
At the end of the day, as long as we can make the survey highly visible we're good. I don't think completing it via a modal pop-up vs. a link to an external site would impact willingness to participate too much, if at all. It could even be as simple as making a survey with Google Forms and inviting users to take it with a banner at the top of the page. Getting it up quickly to start collecting data might be more valuable than taking the time to make it highly customized. |
the purpose of this feature is to collect objective information from actual users to help direct future enhancements to the application.
summary: implement a survey component (modal form) that will exist temporarily. if desired, we can potentially expand this survey modal to consume managed content from the api so it can be re-used regularly to collect user feedback. the api idea may be something we look at doing at a later point, while in the more near future we approach this feature in a more straight-forward fashion. fyi, this idea is in its infancy at the moment, so there will be more clarification at a later point and additional information may be added to this issue. the following are some of the ideas as of now (9/14/20):
If needed, please contribute any ideas, questions, or concerns to this issue via comments below
The text was updated successfully, but these errors were encountered: