Instead of writing a technical design doc and implementation plan from scratch, you write a specification first. The spec becomes the executable source of truth.
Focus on WHAT and WHY, not HOW.
Spec out a game that tests the user's reaction time. It should display a stimulus (e.g., a circle) at random intervals, and the user should click as quickly as possible when they see it. The game should record the reaction time for each trial and display the average reaction time at the end of the session. It should run in a web browser and be visually engaging. Support desktop and mobile devices, and all major platforms and browsers. Store results locally without sending data to any servers. Include instructions and feedback for the user. Make it fun!
Focus on WHAT and WHY, not HOW.
Spec out a game that tests the user's reaction time. It should display a stimulus (e.g., a circle) at random intervals, and the user should click as quickly as possible when they see it. The game should record the reaction time for each trial and display the average reaction time at the end of the session. It should run in a web browser and be visually engaging. Support desktop and mobile devices, and all major platforms and browsers. Store results locally without sending data to any servers. Include instructions and feedback for the user. Make it fun!
Focus on WHAT and WHY, not HOW.
Spec out a game that tests the user's reaction time. It should display a stimulus (e.g., a circle) at random intervals, and the user should click as quickly as possible when they see it. The game should record the reaction time for each trial and display the average reaction time at the end of the session. It should run in a web browser and be visually engaging. Support desktop and mobile devices, and all major platforms and browsers. Store results locally without sending data to any servers. Include instructions and feedback for the user. Make it fun!
Focus on WHAT and WHY, not HOW.
Spec out a game that tests the user's reaction time. It should display a stimulus (e.g., a circle) at random intervals, and the user should click as quickly as possible when they see it. The game should record the reaction time for each trial and display the average reaction time at the end of the session. It should run in a web browser and be visually engaging. Support desktop and mobile devices, and all major platforms and browsers. Store results locally without sending data to any servers. Include instructions and feedback for the user. Make it fun!
A single HTML file that runs participants through a battery of quick gamified cognitive tests (Stroop, free recall, go/no-go, N-back, digit span, flanker, visual search, mental rotation) and displays a bar chart of performance with a class leaderboard.
You could use something like this in part 2 of this course!
Each step produces a document that becomes the source of truth.
The spec-kit workflow keeps everything grounded in a clear, unambiguous specification.
Create a constitution for this project with these principles:
A constitution.md file with inviolable rules.
Build a gamified cognitive testing battery. Single HTML file.
User Journey:
A spec.md with user stories, acceptance criteria.
The agent might ask...
An updated spec.md with notes about what was clarified or changed.
Run this to generate a plan for implementing the project and define success criteria for each project milestone.
Run this to break the implementation plan into discrete, ordered tasks with clear acceptance criteria for each task.
For complex projects, run this to identify any inconsistencies, gaps, or potential issues in the specification or plan before you start implementing.
Running this command will launch an interactive coding session where the agent will execute the implementation plan task by task, generating code, running tests, and verifying outputs at each step.
Whatever each task specifies: functions, classes, tests, documentation, etc. A task is "done" when all its acceptance criteria are met.
Claude will prompt you (often very frequently) to ask for permission to run code, execute commands, or change files. Read them carefully the first time you see them, and then once you get used to how it works you can usually just skim and click "yes" to keep things moving.
"Simplicity is the art of maximizing the amount of work not done."
Friday: data wrangling and how far can you get with stats?