Equal-Vote / star-server

STAR Voting is an upgrade to our current way of voting that allows voters to score candidates from 0 to 5. Ultimately, STAR Voting elects candidates who better represent the whole of the electorate. We are building a site that lets everyone from individuals to organizations use STAR Voting to host simple polls or run secure elections.
GNU Affero General Public License v3.0
18 stars 21 forks source link

Address feedback from Flynn's playtest #343

Open ArendPeter opened 1 year ago

ArendPeter commented 1 year ago

Playtest: https://youtu.be/MzOZjIoeHtg

General

Ballot

Election home page

Quick poll

ArendPeter commented 1 year ago

Flynn sent me some more feedback

Time :alarm_clock: Not sure if this is a bug or intended feature: when making a Full Options Poll, you can set the Start Time to be before the present moment! :alarm_clock: :calendar: I'd prefer if the little calendar widget that popped up when setting Start Date and Stop Date included a way to set the time using clicks, rather than needing to type it in for each :calendar: :hourglass_flowing_sand: Start Date should default to a time other than "today's date, 12:30pm" :hourglass_flowing_sand: :thinking_face: Stop Date should default to a time later than the current time / Start Date time, perhaps at least 30 min past the Start Date default :thinking_face: :diamond_shape_with_a_dot_inside: It would be nice if there were a little summary of how much time you were setting the election open for :diamond_shape_with_a_dot_inside: e.g. for Start Date = 7/6/23 5:00pm ET --->> Stop Date = 7/24/23 4:30pm ET, there could be a little text displayed underneath the Stop Date field that reads "Voting will be open for 17 days, 23 hrs, 30 min" :smile: Aesthetics / Language :equal_vote_logo: When logged in, the button below "Create Quick Poll" should read something like "Create Poll Using Full Options"; "Explore More Settings" is pretty abstract and doesn't imply to the user that they're clicking to create a poll :equal_vote_logo: :thong_sandal: in the Sandbox, STAR-PR doesn't have any nice details tabs :thong_sandal: :foot: the white-space under the Quick Poll setup before the footer could be less so more of the footer is visible on a smallish laptop screen :foot: :eyes: an election that has been Finalized has nowhere to view the election's settings, so if you don't remember how you set it up, you're screwed :eyes: Logic / Functionality :auto_rickshaw: If the user has filled out information in the Quick Poll fields, currently that information doesn't auto-populate to the Full Options Poll fields once that lower button is clicked, your choice if that should happen, but imo it should :auto_rickshaw: :negative_squared_cross_mark: I can set an election that has 1 winner but uses Proportional STAR (this anomaly is also possible in the Sandbox) :negative_squared_cross_mark: :bar_chart: RCV/IRV in the Sandbox appears to ignore how many winners you put and default to single-winner, since multi-winner STV is possible I'm not sure why this would be :bar_chart: Similar story in the Full Options Poll settings, the description for RCV is "Rank candidates in order of preference, single winner, only recommended for educational purposes" :one: :chart_with_downwards_trend: I can enter same rank for more than one RCV candidate, that usually means a spoiled ballot and should be flagged for the voter AND/OR not be allowed by the interface :chart_with_downwards_trend: :five: I can only signal my support for 5 candidates in RCV? Can't rank all candidates?? :five: :three: N = 3. I can create an N-winner (or 4- or 5- etc.) election with only N # of candidates and there is no warning that this is a pointless exercise :three: When I submitted my ballot for this 3-winner 3 candidate Proportional STAR election, and tried to view preliminary results, I got the error seen in the attached screenshot :weary: image

mikefranze commented 1 year ago

Some comments

"users should have the option to submit a blank ballot"

would be a good place to add a pop up confirmation "ballot blank, continue?"

"Handle long names better on results screen image"

Maybe we should cut the names after a certain number of characters. I have a function doing that elsewhere we can move to utils.

"You should have a link to a copy of your ballot" and "there's no ballot confirmation email if you're not logged in (even if the election has your email)"

I've been thinking maybe before submitting a ballot we could have a checkbox "send me a ballot receipt" with an email entry field. If we have their email, it can be prefilled and if not, they can add one. I imagine in some cases people wouldn't care about receipts. I think we do get a ballot id from the submit request so we could provide a link, but I don't know how I feel about providing that. There's also the issue that when the user submits a ballot it goes into a job queue and might not be processed immediately. It would be a pretty bad user experience if they vote get a confirmation link that can't find the ballot.

Not sure if this is a bug or intended feature: when making a Full Options Poll, you can set the Start Time to be before the present moment!

Sort of intended. When the user clicks to add start/end times it prefills them with current time and current time + 24 hours. We could leave them blank, but I feel like it's a better to have something filled in to start. But if we fill in with the current time, that will have passed by the time the election is created which isn't really an issue. We used to have a validation check here but it was triggering of off the default current time enough to be annoying.

I'd prefer if the little calendar widget that popped up when setting Start Date and Stop Date included a way to set the time using clicks, rather than needing to type it in for each

So, this is already a feature, but not every browser supports it yet. It's a basic built in component, not an imported library, so I don't know why it's not supported. We use a combined datetime-local component that lets you enter date and time at the same time. The alternative would be splitting it up into a date widget and a time widget.

It would be nice if there were a little summary of how much time you were setting the election open for e.g. for Start Date = 7/6/23 5:00pm ET --->> Stop Date = 7/24/23 4:30pm ET, there could be a little text displayed underneath the Stop Date field that reads "Voting will be open for 17 days, 23 hrs, 30 min"

This is pretty easy to implement with Luxon.

the white-space under the Quick Poll setup before the footer could be less so more of the footer is visible on a smallish laptop screen

Yea I've noticed it on a lot of pages. We can probably set the margin on the footer so there's always a gap between the footer and main content.

If the user has filled out information in the Quick Poll fields, currently that information doesn't auto-populate to the Full Options Poll fields once that lower button is clicked, your choice if that should happen, but imo it should

That should be how it currently works, and elections should also persist so you can return later, but that hasn't been working lately so we'll have to revisit that.

masiarek commented 6 months ago

Cross reference: https://github.com/Equal-Vote/star-server/issues/479

ArendPeter commented 5 months ago

Most of these are still relevant, but not necessarily needed for 0.1, I'll move it to a later milestone