getodk / getodk/collect

Entering dates: add option for device to read back the date

Open
#428 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
789
Forks
1.4k
Avg merge
3d 10h
Merged PRs (30d)
16

Description

Again, thinking about minimizing date data entry error rates:

After the date is entered (with any date interface), it would be nice to have the option to have the device read the date back to the data collector, out loud and ask them to swipe to acknowledge it. Perhaps the date should appear on the screen at the same time.

The date should appear in the same order as the interface elements and it should be read in that order, too.

The user should specify whether the interface will read the month name or read the month number.

In cases where data collectors are copying dates from written material, we want the read-back to sound exactly like the date looks. So if we know that the dates will be recorded using numbers, we want the read-back to use numbers, too:

If mm-dd-yyyy (02-14-2017) then it might read "Oh-two fourteen two-thousand seventeen".

And if we know that the dates will be written using month names or abbreviations, we want the read-back to use month names:

If mm-dd-yyyy (Feb-14-2017) then it might read "February fourteen, two-thousand-seventeen".

And of course we want the order in which elements are read to mimic the order in which they appear on the interface, so (after implementing the earlier issue I suggested) if the dates are entered mm-dd-yyyy then read them that way, and if they are entered dd-mm-yyyy or yyyy-mm-dd then read them in that order.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named in the issue. Begin by locating the date-entry interfaces and any existing device speech or accessibility behavior; done means supporting the requested read-back across date orders and numeric or named month formats, with an acknowledgement step.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
accessibility, mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.