Google Home
First Conversations
GDG NYC
6 Feb 2017
Allen Firstenberg
Software developer / Consultant
Google Developer Expert
Author: Designing and Developing for Google Glass
http://spiders.com/
http://prisoner.com/

What are we talking about?
- Google Home
- Google Assistant
- Conversations with computers
- Designing and Developing Actions

Developing
We have several approaches to developing with the Google Assistant:
- Direct Actions
- IFTTT
- Conversations
- API.AI
- Actions API
Pros
- Weave support built-in
- Streaming support and controls
Cons
- Requires working directly with Google to integrate additional features
Direct Actions
Pros
- Very simple for simple customization
Cons
- Very very limited response options
- Difficult to share and make generic
IFTTT
Pros
- NLP support with API.AI or roll your own
- Allows for distinctive branding
Cons
- No streaming or notifications
- More mechanical voices
Conversation Actions
VUI Design Principles
(from Google)
- Create a persona
- Design around conversations and dialogs
- Context
- There are no "errors"
- Think Big
- Create a persona
- Design around conversations and dialogs
- Context
- There are no "errors"
- Think Big
- Build for people
- Design for Glass (or Wear... or...)
- Be relevant
- Avoid the unexpected
- Don't get in the way
VUI Principles
Glass Principles


Development Process
- Design Conversation
- Build VUI
- Build back-end
- Distribute
Design Conversation
- Create a persona
- Design around conversations and dialogs
- Context
- There are no "errors"
- Think Big
Design Conversation
Persona
- People give their Assistants a personality
- Tone and Style
- Casual? Formal?
Design Conversation
Dialogs
- Talk out loud
- Create scripts rather than flowcharts
- Don't just think about best path
- Keep responses short
Design Conversation
Context
- Consider partial information or response
- Prompts to build up the response
- References
- What will you remember about the user?
Design Conversation
Errors
- Use as opportunity to clarify
- Consider mindset of user
Remember - the goal is for your user and your program to come to an agreement.
Design Conversation
Think Big
- Where do VUIs make more sense than GUIs?
- What else is the user thinking about?
- What else might the user say or ask?
- Contextual help
- Do you need more than just voice or audio?
Build VUI
with API.AI
- Create a persona
- Design around conversations and dialogs
- Context
- There are no "errors"
- Think Big
Build VUI
Dialogs

Build VUI
Dialogs

Build VUI
Context



Build VUI
Errors

Build VUI
Test

Build your Back-End
with webhooks
- Create a persona
- Design around conversations and dialogs
- Context
- There are no "errors"
- Think Big
Back-End
Dialogs
- Called with Action and Parameters
- Respond with phrases and new contexts
You have 5 seconds!
Back-End
Context
- Unique session and user ID
- Request name and location
- Ask user to log in to our service using mobile app
Deploy
- Create a persona
- Design around conversations and dialogs
- Context
- There are no "errors"
- Think Big
Deploy
Persona
- Icon
- Voice
Deploy
Dialogs
- Default triggers
- Other phrases
Deploy
Context
- Deep Linking
Deploy
Think Big
- There is no app store
- What new relationships can you create?
We are just beginning to explore and understand how to use VUIs.
Any questions?

https://prisoner.com/ubi/
https://developers.google.com/actions/
Google Home
By Allen “Prisoner” Firstenberg
Google Home
- 1,130