{"action":"created","issue":{"url":"https://api.github.com/repos/TabbycatDebate/tabbycat/issues/812","repository_url":"https://api.github.com/repos/TabbycatDebate/tabbycat","labels_url":"https://api.github.com/repos/TabbycatDebate/tabbycat/issues/812/labels{/name}","comments_url":"https://api.github.com/repos/TabbycatDebate/tabbycat/issues/812/comments","events_url":"https://api.github.com/repos/TabbycatDebate/tabbycat/issues/812/events","html_url":"https://github.com/TabbycatDebate/tabbycat/issues/812","id":358371693,"node_id":"MDU6SXNzdWUzNTgzNzE2OTM=","number":812,"title":"Rethink UX of feedback form to prevent unnecessary submissions","user":{"login":"philipbelesky","id":495961,"node_id":"MDQ6VXNlcjQ5NTk2MQ==","avatar_url":"https://avatars0.githubusercontent.com/u/495961?v=4","gravatar_id":"","url":"https://api.github.com/users/philipbelesky","html_url":"https://github.com/philipbelesky","followers_url":"https://api.github.com/users/philipbelesky/followers","following_url":"https://api.github.com/users/philipbelesky/following{/other_user}","gists_url":"https://api.github.com/users/philipbelesky/gists{/gist_id}","starred_url":"https://api.github.com/users/philipbelesky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipbelesky/subscriptions","organizations_url":"https://api.github.com/users/philipbelesky/orgs","repos_url":"https://api.github.com/users/philipbelesky/repos","events_url":"https://api.github.com/users/philipbelesky/events{/privacy}","received_events_url":"https://api.github.com/users/philipbelesky/received_events","type":"User","site_admin":false},"labels":[{"id":17616091,"node_id":"MDU6TGFiZWwxNzYxNjA5MQ==","url":"https://api.github.com/repos/TabbycatDebate/tabbycat/labels/enhancement","name":"enhancement","color":"928D8F","default":true},{"id":102675987,"node_id":"MDU6TGFiZWwxMDI2NzU5ODc=","url":"https://api.github.com/repos/TabbycatDebate/tabbycat/labels/public%20ui","name":"public ui","color":"928D8F","default":false},{"id":17616093,"node_id":"MDU6TGFiZWwxNzYxNjA5Mw==","url":"https://api.github.com/repos/TabbycatDebate/tabbycat/labels/question/discussion","name":"question/discussion","color":"50FFDF","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/TabbycatDebate/tabbycat/milestones/34","html_url":"https://github.com/TabbycatDebate/tabbycat/milestone/34","labels_url":"https://api.github.com/repos/TabbycatDebate/tabbycat/milestones/34/labels","id":3341495,"node_id":"MDk6TWlsZXN0b25lMzM0MTQ5NQ==","number":34,"title":"LaPerm","description":"Reworking of completed rounds system, beta of new Edit Adjudicators and preformed Panels interfaces, and remaining WUDC critical features. Aim for October/November release.","creator":{"login":"philipbelesky","id":495961,"node_id":"MDQ6VXNlcjQ5NTk2MQ==","avatar_url":"https://avatars0.githubusercontent.com/u/495961?v=4","gravatar_id":"","url":"https://api.github.com/users/philipbelesky","html_url":"https://github.com/philipbelesky","followers_url":"https://api.github.com/users/philipbelesky/followers","following_url":"https://api.github.com/users/philipbelesky/following{/other_user}","gists_url":"https://api.github.com/users/philipbelesky/gists{/gist_id}","starred_url":"https://api.github.com/users/philipbelesky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipbelesky/subscriptions","organizations_url":"https://api.github.com/users/philipbelesky/orgs","repos_url":"https://api.github.com/users/philipbelesky/repos","events_url":"https://api.github.com/users/philipbelesky/events{/privacy}","received_events_url":"https://api.github.com/users/philipbelesky/received_events","type":"User","site_admin":false},"open_issues":36,"closed_issues":1,"state":"open","created_at":"2018-05-12T23:41:00Z","updated_at":"2018-09-10T09:17:55Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2018-09-09T11:40:25Z","updated_at":"2018-09-20T01:50:29Z","closed_at":null,"author_association":"MEMBER","body":"The problem of people submitting feedback on panellist rather than the adjudication-deliverer seems to be relatively endemic. I added a warning to the form in fa70381d930b9628ec8bb62c2a85ad3faeb7e89e but I suspect this is not going to be enough.\r\n\r\nI suspect a more robust method would be to structure the questions in the form to properly limit choices based on what happened in the debate. My first thoughts for that structure would be:\r\n\r\n1. Which round is this for? \r\n    - *This then filters (3) based on the answer*\r\n2. Did the chair deliver the adjudication?\r\n    - *This then filters (3) to either be a disabled/single-option `select` or a multi-option `select`*\r\n3. Normal adjudicator selection drop down\r\n\r\nThe intermediary step of (2) would only show if the relevant `feedback_from_teams` pref matches. It is probably also worth adding a `help_text` or similar that reiterates the expectation of the setting (i.e. a slightly more subtle of the alert added in fa70381d930b9628ec8bb62c2a85ad3faeb7e89e).\r\n\r\nIf it makes the implementation easier I wouldn't mind if these three questions were actually presented prior to the standard form being shown; i.e. as a two-part formset or as separate forms. Having them as separate pages might also further reinforce that it is a task that doesn't need to be repeated for every available option.\r\n\r\nFinally, in the 'nice to have' bucket, I wonder if its worth having some way for teams/adjs to see what feedback they have already submitted. This could help the case where different members of the team accidentally submit duplicate feedback not knowing someone else had done so. We could potentially roll the team record links into the private URLs for this purpose or do something more limited."},"comment":{"url":"https://api.github.com/repos/TabbycatDebate/tabbycat/issues/comments/423013165","html_url":"https://github.com/TabbycatDebate/tabbycat/issues/812#issuecomment-423013165","issue_url":"https://api.github.com/repos/TabbycatDebate/tabbycat/issues/812","id":423013165,"node_id":"MDEyOklzc3VlQ29tbWVudDQyMzAxMzE2NQ==","user":{"login":"philipbelesky","id":495961,"node_id":"MDQ6VXNlcjQ5NTk2MQ==","avatar_url":"https://avatars0.githubusercontent.com/u/495961?v=4","gravatar_id":"","url":"https://api.github.com/users/philipbelesky","html_url":"https://github.com/philipbelesky","followers_url":"https://api.github.com/users/philipbelesky/followers","following_url":"https://api.github.com/users/philipbelesky/following{/other_user}","gists_url":"https://api.github.com/users/philipbelesky/gists{/gist_id}","starred_url":"https://api.github.com/users/philipbelesky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipbelesky/subscriptions","organizations_url":"https://api.github.com/users/philipbelesky/orgs","repos_url":"https://api.github.com/users/philipbelesky/repos","events_url":"https://api.github.com/users/philipbelesky/events{/privacy}","received_events_url":"https://api.github.com/users/philipbelesky/received_events","type":"User","site_admin":false},"created_at":"2018-09-20T01:50:29Z","updated_at":"2018-09-20T01:50:29Z","author_association":"MEMBER","body":"While the workload involved might put this outside our scope sufficient to include in a third party system, I don't think this change (or rather the underpinning problem #813) is outside of the scope.\r\n\r\nFirstly in that we've gotten a lot of feedback, particularly at large touranments, that this is a problem with the existing feedback system as-is. This to my mind is a relatively clear problem with the *current* mechanisms of the feedback system rather than the standard set of enhancement/features requests for a more flexible feedback system that would be better served by a third party. \r\n\r\nMaybe I'm missing some things but it also seems like a higher priority than other items on the wishlist. First because of the reports mentioned above, but also because of the actual side effects of not preventing the problem this issue aims to address, which is that adjs who did not *give* feedback end up receiving scores as if they had. These scores are essentially bad data, and require a lot of work on behalf of the tab director to identify and remove. \r\n\r\nOn the workload front I wasn't thinking that this would require any structural changes to the models or mechanisms of how the forms record data. An ideal implementation would require altering the mechanics of the django form that is presented to users, which I know can be difficult. Alternately, a good-enough implementation could use some simple JS on the page itself to filter and present the inputs 1/2/3 mentioned and translate that information into the existing input (which would then be hidden). "}}
{"actor":{"display_login":"philipbelesky"}}