Chapter 18: Conversational Interfaces
Introduction: The Blur Between Human and Machine
"Annoyances should be minimized so everyone can do the things humans do best. The machines are happy to help us, we just need some tools to show them what we need. Conversational interfaces blur the boundaries of what machines and humans can do, and let them work closer toward the same goal."
What humans do best: - Create (art, ideas, solutions) - Connect (empathy, relationships, understanding) - Judge (ethics, priorities, tradeoffs) - Imagine (possibilities, futures, meaning)
What machines do best: - Remember (perfect recall of millions of facts) - Calculate (instant computation at scale) - Validate (checking rules consistently) - Retrieve (finding information across systems)
The problem with traditional forms: They force humans to do machine work. - Humans must remember account numbers (machine's job) - Humans must calculate totals (machine's job) - Humans must look up codes (machine's job) - Humans must format dates correctly (machine's job)
The promise of conversational interfaces: Each does what they do best. - Human expresses intent: "I need to apply for a building permit" - Machine handles mechanics: lookup property, validate zoning, format application - Human makes decisions: "Yes, that's my property" - Machine executes: submit application, schedule inspection - Human creates: "I want a deck for family gatherings" - Machine enables: calculate materials, estimate costs, find contractors
This chapter explores how conversation transforms the human-machine relationship from adversarial (fighting forms) to collaborative (working together).
Section 1: From Forms to Conversations
The Evolution of Interfaces
1980s: Command Line
> SUBMIT PERMIT APPLICATION
Error: Invalid command
> SUBMIT-PERMIT-APPLICATION
Error: Missing parameter APPLICATION_TYPE
> SUBMIT-PERMIT-APPLICATION TYPE=DECK
Error: Missing parameter PROPERTY_ADDRESS
> SUBMIT-PERMIT-APPLICATION TYPE=DECK ADDRESS=456_OAK_ST
Processing...
Human doing machine's job: Remembering exact syntax, typing perfectly.
2000s: Web Forms
Building Permit Application
Property Address: [________________]
Parcel Number: [________________]
Permit Type: [▼ Select One ]
Project Description: [________________]
[________________]
Estimated Cost: [________________]
Contractor License: [________________]
[Submit]
Human doing machine's job: Knowing parcel number, selecting from dropdown, formatting cost as currency.
2025: Intelligent Forms (with 25 patterns)
Building Permit Application
Property Address: [456 Oak St___________]
✓ USPS validated
📍 Parcel: 14-21-356-003 (auto-filled)
Permit Type: [Deck Addition ▼]
(Pre-selected based on your history)
Project Description: [150 sq ft pressure-treated deck]
✓ Within zoning limits (no variance needed)
Estimated Cost: [$8,500]
✓ Reasonable ($57/sq ft typical for decks)
Contractor License: [ABC-123456] (Auto-filled)
✓ Active, insured, no violations
[Submit] Estimated approval: 2 days
Better: Machine helps with lookup, validation, suggestions. But still: Form-shaped. Sequential. Rigid structure.
2035: Conversational Interface
User: I need to build a deck.
System: Great! I can help with the permit. Is this for your property
at 456 Oak Street?
User: Yes.
System: Perfect! A few quick questions:
- How big is the deck? (Your last one was 150 sq ft)
User: About the same, maybe 160 square feet.
System: Got it, 160 sq ft. Just so you know, anything over 150 sq ft
requires a variance in your zoning district. Want to keep it
at 150 to avoid that? Or is the extra 10 sq ft worth the
variance process (adds about 2 weeks)?
User: Oh, let's just do 150 then.
System: Smart choice! Attached to the house or freestanding?
User: Attached.
System: Materials? Last time you used pressure-treated pine.
User: Same.
System: Perfect! I've drafted your permit application:
- 150 sq ft attached deck
- Pressure-treated pine
- Your contractor ABC Construction (license verified ✓)
- Estimated cost $8,500 (based on current material prices)
Does this look right?
User: Yes.
System: Submitted! Approval expected by Wednesday. Inspector Johnson
has availability Thursday 2pm for the footing inspection.
Want me to book it?
User: Sure.
System: Done! You'll get a text reminder Wednesday afternoon. Anything else?
User: No thanks.
System: Great! Good luck with the deck. 🛠️
[Total time: 90 seconds]
What changed: - Natural language (not form fields) - Conversational flow (not sequential sections) - Machine does lookup/validation invisibly - Machine offers advice (variance tradeoff) - Machine learns from history (past deck, preferred contractor) - Machine anticipates next steps (inspection scheduling) - Human just makes decisions (size, materials, yes/no)
This is the collaborative intelligence pattern: You can't tell where human work ends and machine work begins.
Section 2: The 25 Patterns in Conversation
All 25 patterns still apply. They're just invisible in conversation.
Pattern 1: Progressive Disclosure (in conversation)
In forms: Show section 1, then section 2, then section 3.
In conversation:
System: Let's start with the basics. What's your property address?
[User provides address]
System: Great! Now, what type of project?
[User provides project type]
System: Perfect! How big?
[Progressive - reveals questions as context builds]
Why it works: Conversation is naturally progressive. You don't ask everything at once.
Pattern 2: Smart Defaults (in conversation)
In forms: Pre-fill field with last value.
In conversation:
System: Materials? Last time you used pressure-treated pine.
User: Same.
[One word confirms, versus typing "pressure-treated pine"]
Why it works: Suggesting defaults feels natural in conversation. "Same as last time?"
Pattern 3: Inline Validation (in conversation)
In forms: Field turns red, error message appears.
In conversation:
User: I want a 300 square foot deck.
System: Just flagging - anything over 150 sq ft requires a zoning
variance, which adds 2-3 weeks to the process. Want to stick
with 300, or adjust to 150 to skip the variance?
Why it works: Validation feels like helpful advice, not error message.
Pattern 4: Contextual Help (in conversation)
In forms: Tooltip with "i" icon.
In conversation:
User: What's a variance?
System: A variance is permission to deviate from zoning rules. In your
R-1 district, decks over 150 sq ft need variance approval from
the zoning board. Usually takes 2-3 weeks and costs $250 filing
fee. But if your deck is 150 or under, no variance needed!
Why it works: Help is conversational explanation, not static text.
Pattern 6: Domain-Aware Validation (in conversation)
In forms: Dropdown of ICD-10 codes, user must find correct one.
In conversation (medical example):
Doctor: Patient has persistent cough and fever.
System: Sounds like pneumonia. Should I code this as J18.9
(Pneumonia, unspecified organism)?
Doctor: Yes.
System: Got it. I've also added chest X-ray and CBC to orders since
those are standard for pneumonia workup. Sound good?
Doctor: Perfect.
Why it works: Machine knows domain (pneumonia = specific code + standard workup). Doctor just confirms.
Pattern 7: Adaptive Behavior (in conversation)
In forms: System remembers dark mode preference.
In conversation:
[Maria's 47th permit submission]
System: Morning Maria! Another deck permit? I've pre-loaded your
usual setup:
- 150 sq ft (staying under variance limit)
- Pressure-treated pine
- ABC Construction
Just tell me the property address and we're good to go.
Maria: 789 Maple Drive.
System: Done! Submitted. Inspector Johnson available Thursday?
Maria: Yep.
System: Booked! [30 seconds total]
Why it works: Adaptation is invisible. Conversation feels personalized to Maria's patterns.
Pattern 10: Semantic Suggestions (in conversation)
In forms: Dropdown suggestions based on typed letters.
In conversation:
User: My patient has chest pain and shortness of breath.
System: That could be a few things. Most concerning would be:
1. Acute MI (heart attack) - should we order troponins?
2. Pulmonary embolism - D-dimer and CT if high suspicion?
3. Pneumonia - chest X-ray?
Which direction are you thinking?
Doctor: Concerned about MI. Let's get troponins.
System: Ordered. Also adding EKG (standard MI workup). Patient has
aspirin allergy on file - I'll hold off on aspirin protocol.
Sound good?
Why it works: Suggestions feel like a colleague thinking out loud, not a system dropdown.
Pattern 14: Cross-Field Validation (in conversation)
In forms: Error: "End date must be after start date"
In conversation:
User: I need to reserve the conference room from March 15 to March 10.
System: I think you meant March 10 to March 15? (March 10 to 15 is
5 days - does that sound right?)
User: Yes, sorry, March 10 to 15.
System: No problem! Booked: Conference Room A, March 10-15, 9am-5pm.
Why it works: Validation feels like catching an obvious typo, not computer being pedantic.
Pattern 22: Real-Time Lookup (in conversation)
In forms: Type address, click "Validate" button, wait for result.
In conversation:
User: I'm at 456 Oak Street.
System: Got it - 456 Oak St, Springfield, IL 62704. That's the house
with the R-1 zoning, 8,200 sq ft lot, right?
User: Right.
Why it works: Lookup happens invisibly while you're speaking. Feels instant.
Pattern 25: Cross-System Workflows (in conversation)
In forms: Submit form → wait for email → fill out another form → wait...
In conversation:
User: I want to expense this team dinner.
System: [Photo of receipt analyzed]
Perfect! I see it's $450 at Le Grand Bistro in Paris during
your Q3 offsite. All 8 attendees were on the offsite roster.
Auto-approved (within your manager's delegation limit).
Reimbursement will hit your account Wednesday. Receipt filed
with expense report, posted to GL account 6500, flagged for
50% tax deductibility.
All set!
User: Thanks!
[8 seconds total, zero forms]
Why it works: Entire workflow (approval → finance → tax → reimbursement) invisible to user.
Section 3: Voice Interfaces
Voice is the ultimate blur. No screen. Pure conversation.
Voice Design Principles
1. Be brief (attention span is 30 seconds)
Bad:
System: Welcome to the City of Springfield Building Permit Application
System. This system allows you to apply for building permits
for residential and commercial construction projects. You can
apply for deck permits, room additions, new construction,
electrical permits, plumbing permits, and more. Before we
begin, please have your property address, parcel number,
contractor information, and project details ready. Are you
ready to begin?
[User fell asleep]
Good:
System: Hi! Building permit application. What's your address?
2. Confirm, don't repeat
Bad:
User: 456 Oak Street.
System: You said 456 Oak Street. Is that correct?
User: Yes.
System: Thank you for confirming that the address is 456 Oak Street.
Now, what type of permit do you need?
Good:
User: 456 Oak Street.
System: Oak Street, got it. What are you building?
[Confirmation is implicit - system understood and moved forward]
3. Offer examples for open-ended questions
Bad:
System: What type of permit do you need?
User: Uh... a building one?
System: Please be more specific.
Good:
System: What are you building? Like a deck, room addition, fence?
User: A deck.
System: Perfect!
4. Handle ambiguity gracefully
Bad:
User: I want to build a small deck.
System: Error: Please specify exact dimensions.
Good:
User: I want to build a small deck.
System: How small are we talking? Under 100 sq ft, 100-150, or bigger?
User: About 150.
System: Perfect! 150 sq ft is right at the limit where you don't need
a variance. Smart size!
5. Multi-turn memory
Bad:
System: What's your address?
User: 456 Oak Street.
System: What city?
User: Springfield.
System: What state?
User: Illinois.
System: What zip code?
User: 62704.
System: What's the address?
[Forgot everything]
Good:
System: What's your address?
User: 456 Oak Street, Springfield.
System: Illinois or another Springfield? There are 32 Springfields!
User: Illinois.
System: Got it - 456 Oak St, Springfield, IL 62704. [Looked up zip]
Voice Workflow Example: Tax Filing
Scenario: Tax filing via phone (accessible to elderly, blind, non-tech users)
[User dials IRS automated filing line]
System: IRS e-file. I'll need your Social Security number to get started.
User: 123-45-6789.
System: Thank you, John Smith. I have your W-2 from Acme Corp showing
$85,420 in wages. I also see you received $12,000 from
freelance work. Is that everything for income?
User: I also sold some stock.
System: Okay, let me pull your 1099-B forms... I see you sold Apple
stock in March for a $3,450 gain. Anything else?
User: No, that's it.
System: Great! Your total income is $100,870. Now for deductions -
are you taking the standard deduction or itemizing?
User: What's better?
System: For you, standard deduction is $14,600. I don't see enough
itemized deductions to beat that - your mortgage interest
was $8,200, property taxes $3,400, charity $1,200. That's
only $12,800 total.
User: Standard then.
System: Smart choice. That brings your taxable income to $86,270,
which puts you in the 22% tax bracket. Your tax is $14,382.
You already paid $16,200 in withholding, so you're getting
a refund of $1,818.
User: Great!
System: Want to direct deposit to your checking account ending in 4532?
User: Yes.
System: Perfect! Your return is complete. Refund will be in your
account within 21 days. You'll get a confirmation letter
in the mail.
Anything else?
User: No thanks!
System: You're all set. Have a great day!
[Total time: 3 minutes. Zero forms filled out.]
What happened: - IRS already had W-2, 1099 data (Pattern 21: External Data Integration) - System calculated optimal deduction (Pattern 9: Calculated Fields) - System explained tradeoffs (Pattern 4: Contextual Help) - System knew bank account from last year (Pattern 2: Smart Defaults) - Entire return filed by voice (accessible to everyone)
Section 4: Chat Interfaces
Chat combines benefits of conversation (natural) with benefits of GUI (can show things).
Chat Design Principles
1. Mix text and visual
Pure text (limited):
You: Show me my expense report status.
Bot: Your expense report #2847 is "Approved by manager, pending finance
review". Submitted 3 days ago. Amount $847.32. Approver: Sarah Chen.
Finance reviewer: Mike Wang. Expected completion: 2 days.
Text + visual (better):
You: Show me my expense report status.
Bot: Here's your expense report:
┌─────────────────────────────────────┐
│ Expense Report #2847 │
│ Amount: $847.32 │
│ │
│ ✓ Submitted (3 days ago) │
│ ✓ Approved by Sarah Chen │
│ ⏳ Pending Finance Review │
│ Mike Wang • Expected: 2 days │
└─────────────────────────────────────┘
Need to make any changes or have questions?
2. Use buttons for common actions
Pure text (inefficient):
You: I need to reschedule my appointment.
Bot: What date would you like?
You: Next Wednesday.
Bot: Morning or afternoon?
You: Afternoon.
Bot: 1pm, 2pm, 3pm, or 4pm?
You: 2pm.
Text + buttons (faster):
You: I need to reschedule my appointment.
Bot: No problem! When works for you?
[Buttons: Tomorrow | Next Week | Choose Date]
You: [Clicks "Next Week"]
Bot: Next week - which day?
[Buttons: Mon 3/11 | Tue 3/12 | Wed 3/13 | Thu 3/14 | Fri 3/15]
You: [Clicks "Wed 3/13"]
Bot: Wednesday 3/13 - what time?
[Buttons: 9am | 10am | 11am | 1pm | 2pm | 3pm | 4pm]
You: [Clicks "2pm"]
Bot: Perfect! Rescheduled to Wednesday 3/13 at 2pm. Calendar invite sent!
[3 clicks vs 6 messages typed]
3. Progressive disclosure via cards
You: Show me John Doe's patient record.
Bot: Here's the summary:
┌─────────────────────────────────────┐
│ JOHN DOE, 52M │
│ Last Visit: 2 weeks ago │
│ Chronic Conditions: Hypertension │
│ Current Meds: Lisinopril 10mg │
└─────────────────────────────────────┘
[Buttons: Full History | Labs | Medications | Allergies]
You: [Clicks "Labs"]
Bot: Latest labs (from last week):
┌─────────────────────────────────────┐
│ Glucose: 95 mg/dL ✓ Normal │
│ Cholesterol: 180 mg/dL ✓ Normal │
│ Triglycerides: 145 mg/dL ✓ Normal │
│ HDL: 55 mg/dL ✓ Normal │
│ LDL: 98 mg/dL ✓ Normal │
└─────────────────────────────────────┘
[Buttons: Previous Labs | Order New Labs | Back to Summary]
Progressive: Started with summary, revealed details on request.
4. Rich media when helpful
You: How do I tie a bowline knot?
Bot: Here's how to tie a bowline:
[Animated GIF showing bowline knot steps]
Steps:
1. Make a small loop (the "rabbit hole")
2. Thread end up through the loop ("rabbit comes out")
3. Behind the standing line ("around the tree")
4. Back down through the loop ("back in the hole")
5. Tighten
Want me to show you other knots?
Visual + text = Better learning than text alone.
Chat Workflow Example: Healthcare Prescription Refill
You: I need a refill on my blood pressure medication.
Bot: Sure! I see you take Lisinopril 10mg. You have 1 refill remaining.
Want me to send it to your usual pharmacy (Walgreens on Main St)?
[Buttons: Yes, Send It | Different Pharmacy]
You: [Clicks "Yes, Send It"]
Bot: Sent! Refill will be ready in about 2 hours. Walgreens will text
you when it's ready.
By the way, you're on your last refill. Want me to request a
renewal from Dr. Martinez?
[Buttons: Yes, Request Renewal | I'll Call Later]
You: [Clicks "Yes, Request Renewal"]
Bot: Done! I've messaged Dr. Martinez's office. They usually respond
within 24 hours.
┌──────────────────────────────────┐
│ Your BP Medication Status: │
│ • Current refill: Ready in 2 hrs │
│ • Renewal request: Pending │
│ • Next appointment: April 15 │
└──────────────────────────────────┘
Anything else?
[Buttons: Schedule Appointment | Ask Another Question | All Set]
You: [Clicks "All Set"]
Bot: Great! Have a healthy day! 💊
[Total time: 20 seconds, 3 clicks]
What happened: - Bot knew patient's medication history (Pattern 21) - Bot knew pharmacy preference (Pattern 2) - Bot anticipated next step (renewal request) (Pattern 20) - Bot showed status visually - All via quick conversation + buttons
Section 5: Multi-Modal Interfaces
The future blurs voice, chat, screen, and sensors.
Scenario: Future Grocery Shopping (2040)
You're at grocery store, phone in pocket, earbuds in:
[You pick up gallon of milk]
Phone (voice): Milk - $4.29. Added to cart.
You (voice): Is this the cheapest milk?
Phone: Store brand is $2.99. Want me to show you where it is?
You: No, this brand is fine.
Phone: Got it. By the way, you usually buy eggs too. You're near them
- aisle 12, left side.
You: Good reminder, thanks.
[You pick up eggs]
Phone: Large eggs - $3.49. Added to cart.
Quick question - you bought butter last time. Need more? It's
on sale today.
You: Sure, where is it?
[Phone shows AR arrow on screen pointing to dairy section]
Phone: 20 feet ahead, on your right.
[You grab butter]
Phone: Butter - $4.99 (normally $6.49, you're saving $1.50!). Added.
You're at $12.77 total. Anything else, or ready to check out?
You: That's it.
Phone: Great! I've opened your digital wallet. Walk through the
checkout gate.
[You walk through gate - items scanned automatically]
Phone: Charged $12.77 to your card ending in 4532. Receipt emailed.
You saved $1.50 today!
Drive safely!
[You leave store. Total time: 3 minutes. Zero checkout line.]
Multiple modalities used: - Voice: Conversation while shopping - Vision: Phone "sees" what you pick up (via camera or store sensors) - AR: Shows directions on screen - Sensors: Checkout gate scans items automatically - AI: Remembers shopping patterns, finds deals
All 25 patterns present: - Pattern 7: Adaptive (remembers you buy eggs) - Pattern 10: Semantic Suggestions (butter on sale) - Pattern 22: Real-Time Lookup (price checking) - Pattern 2: Smart Defaults (your preferred payment) - Pattern 25: Cross-System Workflow (checkout → payment → receipt)
The blur: Can't tell where your intention ends and machine assistance begins.
Section 6: Handling Ambiguity
Humans are ambiguous. Machines must handle it gracefully.
Ambiguity Type 1: Underspecified Intent
User: I want to file a claim.
System: I can help with that! What type of claim - health insurance,
auto insurance, or homeowner's insurance?
User: Health.
System: Got it. Is this for yourself or a dependent?
User: My daughter.
System: Okay, claim for your daughter Sarah. What's this for?
User: She went to urgent care yesterday.
System: Urgent care visit. Do you have the receipt or should I look
it up in our system?
Strategy: Ask clarifying questions progressively. Don't demand everything upfront.
Ambiguity Type 2: Multiple Interpretations
User: I want to cancel my appointment.
System: I see two upcoming appointments:
1. Dr. Smith (primary care) - Tomorrow 2pm
2. Dr. Jones (dentist) - Next week Thursday 10am
Which one?
User: The dentist.
System: Canceling Dr. Jones next Thursday. Want to reschedule or just cancel?
Strategy: When ambiguous, show options and let human clarify.
Ambiguity Type 3: Implied Information
User: It's not working.
System: I see you submitted an expense report 10 minutes ago. Is that
what's not working?
User: Yes.
System: What's happening when you try to submit?
User: It just says error.
System: I'm looking at the error log... looks like your manager's
approval is required but she's out of office this week. I can
route it to her backup (Mike Wang) instead. Want me to do that?
User: Yes please.
System: Done! Re-routed to Mike. He usually approves within a few hours.
Strategy: Use context to infer what "it" means. Proactively solve problem.
Ambiguity Type 4: Natural Language Variations
Same intent, many phrasings:
"I need to renew my license"
"My license is expiring"
"Can I extend my license?"
"License renewal"
"How do I keep my license current?"
System must recognize all as same intent.
Strategy: Natural language understanding (NLU) models trained on variations.
Ambiguity Type 5: Incomplete Information
User: I'm moving.
System: Congratulations! Want to update your address?
User: Yes.
System: What's your new address?
User: 123 Elm Street.
System: 123 Elm Street... I found 12 cities with that address. Which one?
[Shows list sorted by: nearby cities first, then alphabetical]
User: Denver.
System: 123 Elm St, Denver, CO 80014 - is that right?
User: Yes.
System: Updated! I've also:
- Changed your voter registration to Denver
- Updated your driver's license address
- Notified your insurance company
- Updated mailing address for tax forms
Anything else to update?
Strategy: Accept partial info, ask for what's needed, auto-update related systems.
Section 7: Confirmation Patterns
When should system confirm? When should it just act?
Confirmation Decision Framework
1. Low risk, reversible → Just do it
User: Turn on the lights.
System: [Turns on lights]
NOT: "Are you sure you want to turn on the lights?"
2. Medium risk, costly to undo → Confirm once
User: Cancel my appointment.
System: Canceling your appointment with Dr. Smith tomorrow at 2pm.
All set!
NOT: "Are you sure? Really sure? This can't be undone!" (Yes it can)
3. High risk, irreversible → Confirm + explain
User: Delete my account.
System: Just so you know, deleting your account will:
- Remove all your data permanently
- Cancel your subscription (no refund)
- Delete your files (can't be recovered)
This can't be undone. Are you absolutely sure?
[Buttons: Yes, Delete Everything | Never Mind]
User: [Clicks "Yes, Delete Everything"]
System: Okay, I need you to type your email address to confirm: _____
User: [Types email]
System: Account deleted. Sorry to see you go!
Friction matches risk.
Confirmation Anti-Patterns
Anti-Pattern 1: Confirming the obvious
Bad:
User: What's the weather?
System: You asked about the weather. Is that correct?
Good:
User: What's the weather?
System: It's 72°F and sunny!
Anti-Pattern 2: Confirmation loops
Bad:
User: Send this email.
System: Send email to john@example.com?
User: Yes.
System: Are you sure?
User: YES.
System: Really sure?
User: [Rage quits]
Good:
User: Send this email.
System: Sent to john@example.com!
Anti-Pattern 3: Asking instead of fixing
Bad:
User: Schedule meeting for Feburary 30th.
System: February doesn't have 30 days. Try again?
Good:
User: Schedule meeting for Feburary 30th.
System: February only has 28 days (29 in leap years). Did you mean
February 28th or March 2nd?
Fix don't criticize.
Section 8: When Forms Are Better
Conversation isn't always better. Know when to use forms.
Use Forms When:
1. User wants to see everything at once
Example: Comparing health insurance plans
Form approach:
┌────────────────────────────────────────────────────┐
│ Plan A Plan B Plan C │
│ Premium: $200 Premium: $350 Premium: $500 │
│ Deductible: $5k Deductible: $2k Deductible: $0 │
│ Max OOP: $8k Max OOP: $6k Max OOP: $3k │
│ Network: PPO Network: PPO Network: HMO │
└────────────────────────────────────────────────────┘
Conversational approach would be tedious:
System: Plan A has $200 premium, $5k deductible...
User: What about Plan B?
System: Plan B has $350 premium, $2k deductible...
User: Wait, what was Plan A's deductible again?
[Painful back and forth]
Winner: Form. Side-by-side comparison is visual task.
2. User wants to edit multiple fields
Example: Updating your profile
Form approach:
Name: [John Smith________]
Email: [john@email.com____]
Phone: [555-1234_________]
Address: [123 Main St______]
[Update]
User changes 3 fields, clicks once.
Conversational approach:
System: Want to update your profile?
User: Yes.
System: What do you want to change?
User: Email, phone, and address.
System: Okay, new email?
User: john.smith@gmail.com
System: New phone?
User: 555-9876
System: New address?
User: 456 Oak Street
[Tedious]
Winner: Form. Batch editing is faster visually.
3. User is expert and wants control
Example: Tax professional filing 50 returns per day
Conversational approach:
System: Hi! Let's start with name.
User: [Eye roll - knows this by heart]
System: Now Social Security number...
User: [Getting impatient]
System: Filing status?
User: [JUST LET ME FILL THE FORM!]
Form approach:
[Tax pro keyboard-shortcuts through form in 90 seconds]
Winner: Form. Experts prefer direct manipulation.
4. User wants to save partial progress
Example: Grant application (takes hours to complete)
Form approach:
[Fill out 5 sections]
[Save draft]
[Come back tomorrow]
[Continue from section 6]
Conversational approach:
User: [Talks for an hour]
Okay I need to take a break.
System: Where were we? Let me review...
[5-minute recap of what was discussed]
Winner: Form. Visual state is easier to resume.
Use Conversation When:
1. User is uncertain/exploring
Example: "I think I might need a permit but I'm not sure" → Conversation can guide discovery
2. User is on the go (mobile, driving, cooking)
Example: "Add milk to my grocery list" → Voice while hands busy
3. User has disability (blind, motor impairment)
Example: Voice interface for visually impaired → Conversation is accessible
4. User is casual/infrequent user
Example: Renewing license once every 5 years → Conversation guides unfamiliar process
5. Task is simple (1-3 questions)
Example: "What's the balance on my account?" → Conversation faster than navigating to form
Section 9: The Hybrid Future
Best interfaces blend conversation AND forms.
Example: Intelligent Form with Conversational Helper
Visual form on left, chatbot on right:
┌─────────────────────────┐ ┌──────────────────────┐
│ BUILDING PERMIT │ │ 💬 ASSISTANT │
│ │ │ │
│ Address: │ │ Bot: Hi! I'm here to │
│ [________________] │ │ help with your │
│ │ │ permit. Any │
│ Permit Type: │ │ questions? │
│ [▼ Select_______] │ │ │
│ │ │ You: What's the │
│ Project Description: │ │ difference between │
│ [________________] │ │ "attached" and │
│ [________________] │ │ "detached" deck? │
│ │ │ │
│ Deck Type: │ │ Bot: Attached means │
│ ○ Attached to house │ │ physically connected │
│ ○ Detached (separate) │ │ to your house. │
│ │ │ Detached is separate.│
│ [Submit] │ │ Attached requires │
│ │ │ ledger board │
└─────────────────────────┘ │ attachment to house. │
│ │
│ You: Mine's attached │
│ │
│ Bot: Great! I │
│ selected "Attached" │
│ for you. ✓ │
└──────────────────────┘
Best of both: - Form for visual overview and batch input - Chat for questions and guidance - Chat can fill form fields ("I selected Attached for you") - User chooses interaction style (form OR chat OR both)
Example: Start with Chat, Switch to Form
User: I need to apply for a building permit.
System: Great! I can help with that. What type of project?
User: A deck.
System: Perfect! I've created a deck permit application for you with
most fields pre-filled based on what I know. Want to review
it visually or continue talking?
[Buttons: Show Form | Keep Chatting]
User: [Clicks "Show Form"]
System: [Opens form with pre-filled data from conversation]
┌─────────────────────────────────────┐
│ Property: 456 Oak St ✓ │
│ Type: Deck Addition ✓ │
│ Size: 150 sq ft ✓ │
│ Materials: [__________] ← Fill this │
│ Contractor: [__________] ← And this │
└─────────────────────────────────────┘
System (chat): Just need materials and contractor info. Or I can look
up your contractor from last time - want me to?
User: Yes please.
System: [Fills contractor field]
And materials? You used pressure-treated pine last time.
User: Same.
System: [Fills materials field]
Done! Everything filled out. Want to review or submit?
Fluid switch between modalities as user needs.
Conclusion: The Machines Are Happy to Help
"The machines are happy to help us, we just need some tools to show them what we need."
The tools exist: - Natural language understanding - Speech recognition/synthesis - Context awareness - Pattern recognition - Multi-modal interfaces
The patterns still apply: - Progressive disclosure → Conversation flow - Inline validation → Helpful suggestions - Domain awareness → Intelligent understanding - Smart defaults → Personalized assistance - Cross-system workflows → Invisible orchestration
The boundaries blur: - Human: Expresses intent ("I want a deck") - Machine: Handles mechanics (lookup property, validate zoning) - Human: Makes decisions ("Yes, 150 sq ft") - Machine: Executes (submit, schedule, notify) - Together: Accomplish goal faster, easier, better
The annoyances minimize: - No remembering account numbers (machine remembers) - No calculating totals (machine calculates) - No looking up codes (machine suggests) - No formatting dates (machine understands "tomorrow") - No filling redundant fields (machine pre-fills from context)
Humans do what humans do best: - Create (design the deck) - Decide (choose size, materials) - Judge (is this within budget?) - Imagine (picture family gatherings)
Machines do what machines do best: - Remember (property records, past permits) - Validate (zoning rules, structural codes) - Calculate (costs, timelines, requirements) - Orchestrate (approvals, inspections, notifications)
This is the collaborative future:
Not humans working FOR machines (filling forms). Not machines replacing humans (automation unemployment).
Humans and machines working TOGETHER toward shared goals.
Each doing what they do best. Boundaries blurred. Annoyances minimized. Lives improved.
Next chapter: Ambient Intelligence (systems that anticipate needs before you ask).
Further Reading
Conversational AI
Dialogue Systems: - Jurafsky, D., & Martin, J. H. (2023). Speech and Language Processing (3rd ed.), Chapters 24-26. Pearson. - Dialogue and conversational agents - https://web.stanford.edu/~jurafsky/slp3/ - McTear, M., Callejas, Z., & Griol, D. (2016). The Conversational Interface. Springer. - Comprehensive guide to conversational systems
Research: - Gao, J., Galley, M., & Li, L. (2019). "Neural approaches to conversational AI." Foundations and Trends in Information Retrieval, 13(2-3), 127-298. - State-of-the-art conversational AI techniques - https://doi.org/10.1561/1500000074
Voice Interfaces
Design: - Pearl, C. (2016). Designing Voice User Interfaces. O'Reilly Media. - Conversation design for voice - Cohen, M. H., Giangola, J. P., & Balogh, J. (2004). Voice User Interface Design. Addison-Wesley. - VUI design principles
Platforms: - Amazon Alexa Skills Kit: https://developer.amazon.com/alexa/alexa-skills-kit - Google Assistant SDK: https://developers.google.com/assistant - Apple SiriKit: https://developer.apple.com/sirikit/
Chatbot Frameworks
Development Platforms: - Rasa: https://rasa.com/ - Open-source conversational AI framework - Microsoft Bot Framework: https://dev.botframework.com/ - Enterprise bot development - Dialogflow (Google): https://cloud.google.com/dialogflow - Natural language understanding for bots
Research: - Adamopoulou, E., & Moussiades, L. (2020). "Chatbots: History, technology, and applications." Machine Learning with Applications, 2, 100006. - Survey of chatbot technologies - https://doi.org/10.1016/j.mlwa.2020.100006
Conversation Design
Principles: - Google Conversation Design: https://designguidelines.withgoogle.com/conversation/ - Comprehensive conversation design guidelines - Moore, R. J., & Arar, R. (2019). Conversational UX Design. ACM Books. - Design principles for chat interfaces
Cooperative Principles: - Grice, H. P. (1975). "Logic and conversation." In Syntax and Semantics 3: Speech Acts. Academic Press. - Maxims of conversation: quality, quantity, relation, manner - Foundation for cooperative AI dialogue
Natural Language Understanding
Intent Recognition: - Liu, B. (2015). Sentiment Analysis: Mining Opinions, Sentiments, and Emotions. Cambridge University Press. - Understanding user sentiment in conversations - Spacy: https://spacy.io/ - Industrial NLU library
Entity Extraction: - Named Entity Recognition (NER) - Hugging Face NER models: https://huggingface.co/models?pipeline_tag=token-classification
Multimodal Interaction
Research: - Oviatt, S. (2013). The Design of Future Educational Interfaces. Routledge. - Multimodal interaction design - Turk, M. (2014). "Multimodal interaction: A review." Pattern Recognition Letters, 36, 189-195. - https://doi.org/10.1016/j.patrec.2013.07.003
Examples: - Amazon Echo Show: Voice + visual display - Mobile assistants: Voice + touch + visual - AR interfaces: Voice + gesture + gaze
Context Awareness
Context Management: - Dey, A. K. (2001). "Understanding and using context." Personal and Ubiquitous Computing, 5(1), 4-7. - Definition and taxonomy of context - https://doi.org/10.1007/s007790170019
Dialogue State Tracking: - Williams, J. D., Raux, A., & Henderson, M. (2016). "The dialog state tracking challenge series: A review." Dialogue & Discourse, 7(3), 4-33. - Maintaining context across conversation turns
Related Trilogy Content
- Volume 1, Chapter 10: Domain Knowledge Acquisition—capturing conversational knowledge
- Volume 2, Pattern 16: Cohort Discovery & Analysis—understanding user segments for personalization
- Volume 2, Pattern 20: Natural Experiments—testing conversational approaches
- Volume 3, Pattern 3: Conversational Rhythm—foundational conversation pattern
- Volume 3, Chapter 17: AI Integration with the 25 Patterns—conversational AI principles
- Volume 3, Chapter 19: Ambient Intelligence—context-aware conversation