A Speech Timer Without Numbers: Two Screens, One-Off Settings
The speaker needed a color signal
I asked AI to build a web timer for speeches: start and stop controls, speaker names and time records, and a background that changed from green to yellow to red. The signal had to be visible from a distance.
AI proposed a large clock and status text. I corrected the display requirements: only the operator should see the numbers. The speaker should receive the full-screen color signal, and the unrequested status text should be removed.
| View | Information and controls |
|---|---|
| Speaker | A full-screen color visible from a distance |
| Operator | Time, start and stop controls, speaker names, and records |
The two people needed different information from the same timer. That distinction needed to shape the views from the start.
A one-off time required a new preset
Speeches within one meeting could have different time limits. I wanted quick choices for common settings and direct entry for a value I would use only once.
AI interpreted manual settings as adding another saved preset. Following that proposal would require creating a saved entry just to use a temporary value. I clarified the input location: directly below the quick choices, ready for immediate use.
The intended sequence was to enter the time there and start. The label “manual settings” had not distinguished temporary input from creating a preset.
A normal server response, then a browser error
When the interface later failed, I asked AI to inspect the logs. Its first report showed normal server responses and a SQLite warning. That did not identify why the interface was failing.
The next report narrowed the cause. AI reproduced the error in the browser and found a typo in the code handling the button list. Execution stopped before the interface could populate.
After fixing the code, AI reported checking this sequence in Safari:
- Enter a custom time.
- Start the timer.
- Stop it.
- Confirm that the record was saved.
Checking server responses alone had missed the error. The final check covered the previously corrected one-off input through to the saved record.
This account uses work records from September 7–13, 2026. The error diagnosis and Safari results come from AI’s reports at the time. The app was not rerun during this edit, and long-term use at live events was not verified.