Skip to content

Commit 88f1f1d

Browse files
committed
Update verbage
1 parent 47e2033 commit 88f1f1d

23 files changed

Lines changed: 233 additions & 105 deletions

File tree

exercises/01.building-an-mvp/02.solution.stakeholder-meeting/discovery-brief.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ answers and decisions before implementation begins.
66
## Objective to validate
77

88
- Confirm the MVP outcome this release should optimize for
9-
- Confirmed: optimize for finalized plans, not just polls created
9+
- Confirmed: optimize for finalized plans, not just schedules created
1010
- Confirm the user workflow this MVP should improve first
1111
- Confirmed: reduce coordination friction for friends across different
1212
organizations
@@ -70,10 +70,10 @@ answers and decisions before implementation begins.
7070
- What primary metric defines MVP viability?
7171
- Finalized-plan rate
7272
- What secondary signals help interpret progress?
73-
- Poll response completion rate
74-
- Median time from poll creation to finalized time
73+
- Submission completion rate
74+
- Median time from schedule creation to finalized time
7575
- What failure signal indicates the MVP is not working?
76-
- Many polls created, but few result in a confirmed plan
76+
- Many schedules created, but few result in a confirmed plan
7777
- What UX quality bar should support the success metric?
7878
- Availability selection should feel spreadsheet-fast: like selecting
7979
time-slot cells in Excel on desktop, with clear visual state and low
@@ -119,8 +119,8 @@ answers and decisions before implementation begins.
119119
- Confusion between host and attendee links causing incorrect sharing or lost
120120
host control
121121
- What evidence would indicate each risk is becoming real?
122-
- Polls with low completion
123-
- Low response rates despite poll creation
122+
- Schedules with low submission completion
123+
- Low response rates despite schedule creation
124124
- Growing backlog of out-of-scope requests
125125
- What mitigation options are available if a risk materializes?
126126
- Mobile-first UX for response completion (thumb-friendly controls, clear
@@ -158,7 +158,7 @@ answers and decisions before implementation begins.
158158
attendee response visibility
159159
- If existing scheduling tools already work, why build this?
160160
- We need a differentiated UX for reliable plan completion plus AI-agent
161-
orchestration via MCP, not just another availability poll
161+
orchestration via MCP, not just another scheduling link
162162
- Where are we drawing UX inspiration and which competitors should guide
163163
baseline expectations?
164164
- when2meet.com, whenavailable.com, and Doodle

exercises/01.building-an-mvp/02.solution.stakeholder-meeting/discovery-meeting-transcript.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ simple availability collection, but they break down for our target flow:
2525
cross-organization friend groups coordinating in messy chat threads with no
2626
clear owner and no reliable "final plan" moment.
2727

28-
💼 Brett: Our advantage is not "another poll." It is a completion-first
28+
💼 Brett: Our advantage is not "another scheduling link." It is a completion-first
2929
coordination loop: low-friction participation, explicit finalization, and host
3030
controls that work without forcing everyone into account creation.
3131

3232
🐨 Kody: So the justification for building is that we are targeting a specific
3333
gap existing tools do not solve well, and we can define success against that
3434
gap.
3535

36-
💼 Brett: Exactly. If we cannot outperform the default chat-plus-poll behavior
36+
💼 Brett: Exactly. If we cannot outperform the default chat-plus-scheduling-link behavior
3737
on finalized plans, we should stop and not keep investing.
3838

3939
🐨 Kody: Where are we going to draw inspiration for the user experience? Which
@@ -92,7 +92,7 @@ first release, which one tells us this is working?
9292
because we can ship faster, reduce risk, and learn from real behavior sooner.
9393

9494
💼 Brett: If I force myself to pick one, it is finalized plans. We can get
95-
excited about poll creation, but if people still do not lock a time, we have not
95+
excited about schedule creation, but if people still do not lock a time, we have not
9696
actually solved anything. So yes, finalized plans first.
9797

9898
🐨 Kody: Who is the first user segment?
@@ -139,7 +139,7 @@ you are asking for workflow signals, not growth signals.
139139
🐨 Kody: Useful later. For this workflow specifically, what secondary signals
140140
help explain finalized-plan rate?
141141

142-
💼 Brett: For workflow, poll response completion and time-to-finalized-plan.
142+
💼 Brett: For workflow, submission completion and time-to-finalized-plan.
143143

144144
🐨 Kody: What failure pattern should we watch for?
145145

@@ -150,7 +150,7 @@ value, even if activity looks okay. For example, if people keep abandoning the
150150
flow before they submit availability, that is a failure pattern.
151151

152152
💼 Brett: The bad pattern is lots of activity that looks healthy on the surface
153-
but no real outcomes. In this case: lots of polls created, very few confirmed
153+
but no real outcomes. In this case: lots of schedules created, very few confirmed
154154
plans.
155155

156156
🐨 Kody: Where does today’s workflow fail most?

exercises/01.building-an-mvp/03.problem.select-starter-architecture/discovery-brief.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ answers and decisions before implementation begins.
66
## Objective to validate
77

88
- Confirm the MVP outcome this release should optimize for
9-
- Confirmed: optimize for finalized plans, not just polls created
9+
- Confirmed: optimize for finalized plans, not just schedules created
1010
- Confirm the user workflow this MVP should improve first
1111
- Confirmed: reduce coordination friction for friends across different
1212
organizations
@@ -70,10 +70,10 @@ answers and decisions before implementation begins.
7070
- What primary metric defines MVP viability?
7171
- Finalized-plan rate
7272
- What secondary signals help interpret progress?
73-
- Poll response completion rate
74-
- Median time from poll creation to finalized time
73+
- Submission completion rate
74+
- Median time from schedule creation to finalized time
7575
- What failure signal indicates the MVP is not working?
76-
- Many polls created, but few result in a confirmed plan
76+
- Many schedules created, but few result in a confirmed plan
7777
- What UX quality bar should support the success metric?
7878
- Availability selection should feel spreadsheet-fast: like selecting
7979
time-slot cells in Excel on desktop, with clear visual state and low
@@ -119,8 +119,8 @@ answers and decisions before implementation begins.
119119
- Confusion between host and attendee links causing incorrect sharing or lost
120120
host control
121121
- What evidence would indicate each risk is becoming real?
122-
- Polls with low completion
123-
- Low response rates despite poll creation
122+
- Schedules with low submission completion
123+
- Low response rates despite schedule creation
124124
- Growing backlog of out-of-scope requests
125125
- What mitigation options are available if a risk materializes?
126126
- Mobile-first UX for response completion (thumb-friendly controls, clear
@@ -158,7 +158,7 @@ answers and decisions before implementation begins.
158158
attendee response visibility
159159
- If existing scheduling tools already work, why build this?
160160
- We need a differentiated UX for reliable plan completion plus AI-agent
161-
orchestration via MCP, not just another availability poll
161+
orchestration via MCP, not just another scheduling link
162162
- Where are we drawing UX inspiration and which competitors should guide
163163
baseline expectations?
164164
- when2meet.com, whenavailable.com, and Doodle

exercises/01.building-an-mvp/03.problem.select-starter-architecture/discovery-meeting-transcript.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ simple availability collection, but they break down for our target flow:
2525
cross-organization friend groups coordinating in messy chat threads with no
2626
clear owner and no reliable "final plan" moment.
2727

28-
💼 Brett: Our advantage is not "another poll." It is a completion-first
28+
💼 Brett: Our advantage is not "another scheduling link." It is a completion-first
2929
coordination loop: low-friction participation, explicit finalization, and host
3030
controls that work without forcing everyone into account creation.
3131

3232
🐨 Kody: So the justification for building is that we are targeting a specific
3333
gap existing tools do not solve well, and we can define success against that
3434
gap.
3535

36-
💼 Brett: Exactly. If we cannot outperform the default chat-plus-poll behavior
36+
💼 Brett: Exactly. If we cannot outperform the default chat-plus-scheduling-link behavior
3737
on finalized plans, we should stop and not keep investing.
3838

3939
🐨 Kody: Where are we going to draw inspiration for the user experience? Which
@@ -92,7 +92,7 @@ first release, which one tells us this is working?
9292
because we can ship faster, reduce risk, and learn from real behavior sooner.
9393

9494
💼 Brett: If I force myself to pick one, it is finalized plans. We can get
95-
excited about poll creation, but if people still do not lock a time, we have not
95+
excited about schedule creation, but if people still do not lock a time, we have not
9696
actually solved anything. So yes, finalized plans first.
9797

9898
🐨 Kody: Who is the first user segment?
@@ -139,7 +139,7 @@ you are asking for workflow signals, not growth signals.
139139
🐨 Kody: Useful later. For this workflow specifically, what secondary signals
140140
help explain finalized-plan rate?
141141

142-
💼 Brett: For workflow, poll response completion and time-to-finalized-plan.
142+
💼 Brett: For workflow, submission completion and time-to-finalized-plan.
143143

144144
🐨 Kody: What failure pattern should we watch for?
145145

@@ -150,7 +150,7 @@ value, even if activity looks okay. For example, if people keep abandoning the
150150
flow before they submit availability, that is a failure pattern.
151151

152152
💼 Brett: The bad pattern is lots of activity that looks healthy on the surface
153-
but no real outcomes. In this case: lots of polls created, very few confirmed
153+
but no real outcomes. In this case: lots of schedules created, very few confirmed
154154
plans.
155155

156156
🐨 Kody: Where does today’s workflow fail most?

exercises/01.building-an-mvp/03.solution.select-starter-architecture/discovery-brief.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ answers and decisions before implementation begins.
66
## Objective to validate
77

88
- Confirm the MVP outcome this release should optimize for
9-
- Confirmed: optimize for finalized plans, not just polls created
9+
- Confirmed: optimize for finalized plans, not just schedules created
1010
- Confirm the user workflow this MVP should improve first
1111
- Confirmed: reduce coordination friction for friends across different
1212
organizations
@@ -70,10 +70,10 @@ answers and decisions before implementation begins.
7070
- What primary metric defines MVP viability?
7171
- Finalized-plan rate
7272
- What secondary signals help interpret progress?
73-
- Poll response completion rate
74-
- Median time from poll creation to finalized time
73+
- Submission completion rate
74+
- Median time from schedule creation to finalized time
7575
- What failure signal indicates the MVP is not working?
76-
- Many polls created, but few result in a confirmed plan
76+
- Many schedules created, but few result in a confirmed plan
7777
- What UX quality bar should support the success metric?
7878
- Availability selection should feel spreadsheet-fast: like selecting
7979
time-slot cells in Excel on desktop, with clear visual state and low
@@ -119,8 +119,8 @@ answers and decisions before implementation begins.
119119
- Confusion between host and attendee links causing incorrect sharing or lost
120120
host control
121121
- What evidence would indicate each risk is becoming real?
122-
- Polls with low completion
123-
- Low response rates despite poll creation
122+
- Schedules with low submission completion
123+
- Low response rates despite schedule creation
124124
- Growing backlog of out-of-scope requests
125125
- What mitigation options are available if a risk materializes?
126126
- Mobile-first UX for response completion (thumb-friendly controls, clear
@@ -158,7 +158,7 @@ answers and decisions before implementation begins.
158158
attendee response visibility
159159
- If existing scheduling tools already work, why build this?
160160
- We need a differentiated UX for reliable plan completion plus AI-agent
161-
orchestration via MCP, not just another availability poll
161+
orchestration via MCP, not just another scheduling link
162162
- Where are we drawing UX inspiration and which competitors should guide
163163
baseline expectations?
164164
- when2meet.com, whenavailable.com, and Doodle

exercises/01.building-an-mvp/03.solution.select-starter-architecture/discovery-meeting-transcript.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ simple availability collection, but they break down for our target flow:
2525
cross-organization friend groups coordinating in messy chat threads with no
2626
clear owner and no reliable "final plan" moment.
2727

28-
💼 Brett: Our advantage is not "another poll." It is a completion-first
28+
💼 Brett: Our advantage is not "another scheduling link." It is a completion-first
2929
coordination loop: low-friction participation, explicit finalization, and host
3030
controls that work without forcing everyone into account creation.
3131

3232
🐨 Kody: So the justification for building is that we are targeting a specific
3333
gap existing tools do not solve well, and we can define success against that
3434
gap.
3535

36-
💼 Brett: Exactly. If we cannot outperform the default chat-plus-poll behavior
36+
💼 Brett: Exactly. If we cannot outperform the default chat-plus-scheduling-link behavior
3737
on finalized plans, we should stop and not keep investing.
3838

3939
🐨 Kody: Where are we going to draw inspiration for the user experience? Which
@@ -92,7 +92,7 @@ first release, which one tells us this is working?
9292
because we can ship faster, reduce risk, and learn from real behavior sooner.
9393

9494
💼 Brett: If I force myself to pick one, it is finalized plans. We can get
95-
excited about poll creation, but if people still do not lock a time, we have not
95+
excited about schedule creation, but if people still do not lock a time, we have not
9696
actually solved anything. So yes, finalized plans first.
9797

9898
🐨 Kody: Who is the first user segment?
@@ -139,7 +139,7 @@ you are asking for workflow signals, not growth signals.
139139
🐨 Kody: Useful later. For this workflow specifically, what secondary signals
140140
help explain finalized-plan rate?
141141

142-
💼 Brett: For workflow, poll response completion and time-to-finalized-plan.
142+
💼 Brett: For workflow, submission completion and time-to-finalized-plan.
143143

144144
🐨 Kody: What failure pattern should we watch for?
145145

@@ -150,7 +150,7 @@ value, even if activity looks okay. For example, if people keep abandoning the
150150
flow before they submit availability, that is a failure pattern.
151151

152152
💼 Brett: The bad pattern is lots of activity that looks healthy on the surface
153-
but no real outcomes. In this case: lots of polls created, very few confirmed
153+
but no real outcomes. In this case: lots of schedules created, very few confirmed
154154
plans.
155155

156156
🐨 Kody: Where does today’s workflow fail most?

exercises/01.building-an-mvp/04.problem.implementation/docs/planning/discovery-brief.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ answers and decisions before implementation begins.
66
## Objective to validate
77

88
- Confirm the MVP outcome this release should optimize for
9-
- Confirmed: optimize for finalized plans, not just polls created
9+
- Confirmed: optimize for finalized plans, not just schedules created
1010
- Confirm the user workflow this MVP should improve first
1111
- Confirmed: reduce coordination friction for friends across different
1212
organizations
@@ -70,10 +70,10 @@ answers and decisions before implementation begins.
7070
- What primary metric defines MVP viability?
7171
- Finalized-plan rate
7272
- What secondary signals help interpret progress?
73-
- Poll response completion rate
74-
- Median time from poll creation to finalized time
73+
- Submission completion rate
74+
- Median time from schedule creation to finalized time
7575
- What failure signal indicates the MVP is not working?
76-
- Many polls created, but few result in a confirmed plan
76+
- Many schedules created, but few result in a confirmed plan
7777
- What UX quality bar should support the success metric?
7878
- Availability selection should feel spreadsheet-fast: like selecting
7979
time-slot cells in Excel on desktop, with clear visual state and low
@@ -119,8 +119,8 @@ answers and decisions before implementation begins.
119119
- Confusion between host and attendee links causing incorrect sharing or lost
120120
host control
121121
- What evidence would indicate each risk is becoming real?
122-
- Polls with low completion
123-
- Low response rates despite poll creation
122+
- Schedules with low submission completion
123+
- Low response rates despite schedule creation
124124
- Growing backlog of out-of-scope requests
125125
- What mitigation options are available if a risk materializes?
126126
- Mobile-first UX for response completion (thumb-friendly controls, clear
@@ -158,7 +158,7 @@ answers and decisions before implementation begins.
158158
attendee response visibility
159159
- If existing scheduling tools already work, why build this?
160160
- We need a differentiated UX for reliable plan completion plus AI-agent
161-
orchestration via MCP, not just another availability poll
161+
orchestration via MCP, not just another scheduling link
162162
- Where are we drawing UX inspiration and which competitors should guide
163163
baseline expectations?
164164
- when2meet.com, whenavailable.com, and Doodle

exercises/01.building-an-mvp/04.problem.implementation/docs/planning/discovery-meeting-transcript.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ simple availability collection, but they break down for our target flow:
2525
cross-organization friend groups coordinating in messy chat threads with no
2626
clear owner and no reliable "final plan" moment.
2727

28-
💼 Brett: Our advantage is not "another poll." It is a completion-first
28+
💼 Brett: Our advantage is not "another scheduling link." It is a completion-first
2929
coordination loop: low-friction participation, explicit finalization, and host
3030
controls that work without forcing everyone into account creation.
3131

3232
🐨 Kody: So the justification for building is that we are targeting a specific
3333
gap existing tools do not solve well, and we can define success against that
3434
gap.
3535

36-
💼 Brett: Exactly. If we cannot outperform the default chat-plus-poll behavior
36+
💼 Brett: Exactly. If we cannot outperform the default chat-plus-scheduling-link behavior
3737
on finalized plans, we should stop and not keep investing.
3838

3939
🐨 Kody: Where are we going to draw inspiration for the user experience? Which
@@ -92,7 +92,7 @@ first release, which one tells us this is working?
9292
because we can ship faster, reduce risk, and learn from real behavior sooner.
9393

9494
💼 Brett: If I force myself to pick one, it is finalized plans. We can get
95-
excited about poll creation, but if people still do not lock a time, we have not
95+
excited about schedule creation, but if people still do not lock a time, we have not
9696
actually solved anything. So yes, finalized plans first.
9797

9898
🐨 Kody: Who is the first user segment?
@@ -139,7 +139,7 @@ you are asking for workflow signals, not growth signals.
139139
🐨 Kody: Useful later. For this workflow specifically, what secondary signals
140140
help explain finalized-plan rate?
141141

142-
💼 Brett: For workflow, poll response completion and time-to-finalized-plan.
142+
💼 Brett: For workflow, submission completion and time-to-finalized-plan.
143143

144144
🐨 Kody: What failure pattern should we watch for?
145145

@@ -150,7 +150,7 @@ value, even if activity looks okay. For example, if people keep abandoning the
150150
flow before they submit availability, that is a failure pattern.
151151

152152
💼 Brett: The bad pattern is lots of activity that looks healthy on the surface
153-
but no real outcomes. In this case: lots of polls created, very few confirmed
153+
but no real outcomes. In this case: lots of schedules created, very few confirmed
154154
plans.
155155

156156
🐨 Kody: Where does today’s workflow fail most?

exercises/01.building-an-mvp/04.solution.implementation/client/routes/host-schedule.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -341,6 +341,9 @@ export function HostScheduleRoute(handle: Handle) {
341341
startsAtUtc: localSlotKeyToUtcIso(localSlotKey, timezone),
342342
}))
343343
const model = createGridModel(gridSlots, timezone)
344+
const bestSlotSubmissionCount = scheduleSnapshot?.bestSlotUtc
345+
? (scheduleSnapshot.responseCounts[scheduleSnapshot.bestSlotUtc] ?? 0)
346+
: 0
344347

345348
return (
346349
<section css={{ display: 'grid', gap: spacing.lg }}>
@@ -642,8 +645,8 @@ export function HostScheduleRoute(handle: Handle) {
642645
hour: 'numeric',
643646
minute: '2-digit',
644647
})}{' '}
645-
({scheduleSnapshot.responseCounts[scheduleSnapshot.bestSlotUtc] ?? 0}{' '}
646-
votes, {timezone})
648+
({bestSlotSubmissionCount} submission
649+
{bestSlotSubmissionCount === 1 ? '' : 's'}, {timezone})
647650
</strong>
648651
</p>
649652
) : (

exercises/01.building-an-mvp/04.solution.implementation/client/routes/respond-schedule.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,9 @@ export function RespondScheduleRoute(handle: Handle) {
254254
startsAtUtc: slot,
255255
}))
256256
const model = createGridModel(gridSlots, attendeeTimeZone)
257+
const bestSlotSubmissionCount = schedule.bestSlotUtc
258+
? (schedule.responseCounts[schedule.bestSlotUtc] ?? 0)
259+
: 0
257260

258261
return (
259262
<section css={{ display: 'grid', gap: spacing.lg }}>
@@ -291,7 +294,8 @@ export function RespondScheduleRoute(handle: Handle) {
291294
hour: 'numeric',
292295
minute: '2-digit',
293296
})}{' '}
294-
({schedule.responseCounts[schedule.bestSlotUtc] ?? 0} votes)
297+
({bestSlotSubmissionCount} submission
298+
{bestSlotSubmissionCount === 1 ? '' : 's'})
295299
</strong>
296300
</p>
297301
) : null}

0 commit comments

Comments
 (0)