SlideShare a Scribd company logo
1 of 31
Building Apps for Alexa
Voice Design & Alexa Skill 101
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Alex Nicol
Software Engineer / Conversational system specialist
• EDF Energy R&D UK Centre
• Bounce Technologies
@nicol_alexandre
webnicol.fr
GitHub: alexandrenicol
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
A bit of context
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
28th September 2016: EDF Energy
is of Amazon’s 12 launch partners
for the release of the Echo Family in
the UK.
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Voice Design
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Having a conversation with an object,
science-fiction made us dream about it,
but today this experience still isn’t natural.
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Cognitive (over)load.
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Paul Grice’s maxims of conversation - 1975
• Quality
• Quantity
• Relation
• Manner
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Amazon’s Alexa Design Guide
• Be adaptable: Let users speak in their own words.
• Be personal: Individualise your entire interaction.
• Be available: Collapse your menus; make all options top-level.
• Be relatable: Talk with them, not at them.
Establish and maintain trust
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Confirmation and understanding
• Explicit vs implicit vs hybrid confirmation
• Speech recognition
• User input
• Context / Multiturn conversation
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Multimodality
• How to solve problems around cognitive
overload, confirmation and speech recognition
error?
• Voice only VS Voice first
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
// Key findings:
I. Is it AI?
II. Text ≠ Voice
III. Platforms matter
IV. UX First
V. Discoverability
VI. Not everything can/should be bot-ed
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
// Interested in voice design?
I. Book: Conversational Design (Erika Hall, A Book
Apart)
II. Book: Designing Voice User Interfaces: Principles of
Conversational Experiences (Cathy Pearl, O’Reilly)
III. https://voiceprinciples.com/ (Ben Sauer)
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Alexa Skills Kit
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
What you need to start:
• An Amazon (developer) account
• That’s it!
• Recommended stack is AWS Lambda / Node.js
https://developer.amazon.com/alexa/console/ask
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Vocabulary
• Lambda
• Skill
• Invocation name
• Intent
• Entity/Slot
• Utterances
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Some specific ASK features
• [Speech] SSML & Speechcons
• [Dialog] Slot Filling & Auto-delegation
• [Logic] Persistence & Context
• [Display] APL
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Let’s Build a BWDM skill!
• Build (the dialog model)
• Code (the logic)
• Test (the skill)
Process to create a “feature”
• Create the Intent
• Add some utterances/slots
• Code the intent handler (canHandle / handle)
• Register the intent handler
Typical Intent Handler
canHandle is triggered for all intent handlers until one return true;
For the intent handler that has been selected, its handle function is triggered.
Persistence (using s3, available on hosted skill)
Context
• How do you know what they talk about when they just say
something about that?
Context
• How do you know what they talk about when they just say
something about that?
• Yes, context is important! Use persistence in canHandle to
register multiple handler for the same intent, based on the
context.
Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
Build!
• Free Echo Dot
• Free monthly $100 AWS credits
Thank you.
Questions?
alex@webnicol.fr
@nicol_alexandre

More Related Content

Similar to Buidling Apps for Alexa

Tiny Spec Islamabad spec highlights + workshop - Serverless
Tiny Spec Islamabad   spec highlights + workshop - ServerlessTiny Spec Islamabad   spec highlights + workshop - Serverless
Tiny Spec Islamabad spec highlights + workshop - Serverless
Hamza Tahir
 
Test+video+upload
Test+video+uploadTest+video+upload
Test+video+upload
Tianwei_liu
 

Similar to Buidling Apps for Alexa (20)

Prototyping Mobile Apps with NativeScript and Angular
Prototyping Mobile Apps with NativeScript and AngularPrototyping Mobile Apps with NativeScript and Angular
Prototyping Mobile Apps with NativeScript and Angular
 
Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Whats New in Visual Studio 2019
Whats New in Visual Studio 2019
 
Tiny Spec Islamabad spec highlights + workshop - Serverless
Tiny Spec Islamabad   spec highlights + workshop - ServerlessTiny Spec Islamabad   spec highlights + workshop - Serverless
Tiny Spec Islamabad spec highlights + workshop - Serverless
 
Test+video+upload
Test+video+uploadTest+video+upload
Test+video+upload
 
OracleDeveloperMeetup - London 19-12-17
OracleDeveloperMeetup - London 19-12-17OracleDeveloperMeetup - London 19-12-17
OracleDeveloperMeetup - London 19-12-17
 
WebKit, why it matters?
WebKit, why it matters?WebKit, why it matters?
WebKit, why it matters?
 
2013.02.26 Intel Overview
2013.02.26 Intel Overview2013.02.26 Intel Overview
2013.02.26 Intel Overview
 
Spring I/O Barcelona '19 Recap
Spring I/O Barcelona '19 RecapSpring I/O Barcelona '19 Recap
Spring I/O Barcelona '19 Recap
 
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET
 
Collaboration Beyond Code
Collaboration Beyond CodeCollaboration Beyond Code
Collaboration Beyond Code
 
Introduction to (web) APIs - definitions, examples, concepts and trends
Introduction to (web) APIs - definitions, examples, concepts and trendsIntroduction to (web) APIs - definitions, examples, concepts and trends
Introduction to (web) APIs - definitions, examples, concepts and trends
 
Geeky Weekend 2016
Geeky Weekend 2016Geeky Weekend 2016
Geeky Weekend 2016
 
Geeky Weekend - Building tech community in Saigon
Geeky Weekend - Building tech community in SaigonGeeky Weekend - Building tech community in Saigon
Geeky Weekend - Building tech community in Saigon
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019
 
[Rakuten Technology Conference 2019] Be the central on your field
[Rakuten Technology Conference 2019] Be the central on your field[Rakuten Technology Conference 2019] Be the central on your field
[Rakuten Technology Conference 2019] Be the central on your field
 
What is Kotlin Multiplaform? Why & How?
What is Kotlin Multiplaform? Why & How? What is Kotlin Multiplaform? Why & How?
What is Kotlin Multiplaform? Why & How?
 
Vinit Deliwala Resume
Vinit Deliwala ResumeVinit Deliwala Resume
Vinit Deliwala Resume
 
SydMobDev Feb 2014 - Cross Platform Native App Development with Xamarin and M...
SydMobDev Feb 2014 - Cross Platform Native App Development with Xamarin and M...SydMobDev Feb 2014 - Cross Platform Native App Development with Xamarin and M...
SydMobDev Feb 2014 - Cross Platform Native App Development with Xamarin and M...
 
Tiny Spec Delhi NCR 2019
Tiny Spec Delhi NCR 2019Tiny Spec Delhi NCR 2019
Tiny Spec Delhi NCR 2019
 
Cortex/Syntex : Digitalize your company information -aOS South Asia 24/10/2020
 Cortex/Syntex : Digitalize your company information -aOS South Asia 24/10/2020 Cortex/Syntex : Digitalize your company information -aOS South Asia 24/10/2020
Cortex/Syntex : Digitalize your company information -aOS South Asia 24/10/2020
 

Recently uploaded

Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 

Recently uploaded (20)

Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 

Buidling Apps for Alexa

  • 1. Building Apps for Alexa Voice Design & Alexa Skill 101 Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 2. Alex Nicol Software Engineer / Conversational system specialist • EDF Energy R&D UK Centre • Bounce Technologies @nicol_alexandre webnicol.fr GitHub: alexandrenicol Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 3. A bit of context Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 4. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 5. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 6. 28th September 2016: EDF Energy is of Amazon’s 12 launch partners for the release of the Echo Family in the UK.
  • 7. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 8.
  • 9. Voice Design Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 10. Having a conversation with an object, science-fiction made us dream about it, but today this experience still isn’t natural. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 11. Cognitive (over)load. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 12. Paul Grice’s maxims of conversation - 1975 • Quality • Quantity • Relation • Manner Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 13. Amazon’s Alexa Design Guide • Be adaptable: Let users speak in their own words. • Be personal: Individualise your entire interaction. • Be available: Collapse your menus; make all options top-level. • Be relatable: Talk with them, not at them. Establish and maintain trust Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 14. Confirmation and understanding • Explicit vs implicit vs hybrid confirmation • Speech recognition • User input • Context / Multiturn conversation Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 15. Multimodality • How to solve problems around cognitive overload, confirmation and speech recognition error? • Voice only VS Voice first Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 16. // Key findings: I. Is it AI? II. Text ≠ Voice III. Platforms matter IV. UX First V. Discoverability VI. Not everything can/should be bot-ed Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 17. // Interested in voice design? I. Book: Conversational Design (Erika Hall, A Book Apart) II. Book: Designing Voice User Interfaces: Principles of Conversational Experiences (Cathy Pearl, O’Reilly) III. https://voiceprinciples.com/ (Ben Sauer) Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre
  • 18. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre Alexa Skills Kit
  • 19. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre What you need to start: • An Amazon (developer) account • That’s it! • Recommended stack is AWS Lambda / Node.js
  • 21. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre Vocabulary • Lambda • Skill • Invocation name • Intent • Entity/Slot • Utterances
  • 22. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre Some specific ASK features • [Speech] SSML & Speechcons • [Dialog] Slot Filling & Auto-delegation • [Logic] Persistence & Context • [Display] APL
  • 23. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre Let’s Build a BWDM skill! • Build (the dialog model) • Code (the logic) • Test (the skill)
  • 24. Process to create a “feature” • Create the Intent • Add some utterances/slots • Code the intent handler (canHandle / handle) • Register the intent handler
  • 25. Typical Intent Handler canHandle is triggered for all intent handlers until one return true; For the intent handler that has been selected, its handle function is triggered.
  • 26. Persistence (using s3, available on hosted skill)
  • 27. Context • How do you know what they talk about when they just say something about that?
  • 28. Context • How do you know what they talk about when they just say something about that? • Yes, context is important! Use persistence in canHandle to register multiple handler for the same intent, based on the context.
  • 29. Brighton Web Development Meetup | August 2019 | Alex Nicol @nicol_alexandre Build! • Free Echo Dot • Free monthly $100 AWS credits
  • 30.

Editor's Notes

  1. I’m a software engineer, specialised in conversational systems. I have got two jobs: I work for the EDF Energy R&D UK Centre since 2015, in the digital innovation team. We do research and development on innovative technologies like blockchain, augmented and virtual reality, machine learning, and of course chatbots and voice. And I have recently joined Bounce Technologies, which is a software development studio, that aims to build technology that people love, and which has a positive impact on the world. Our core focus is helping early to mid-stage companies bring their digital products to market, while also creating our own products.
  2. 23rd June 2015
  3. In 2016, following our discovery of the Amazon Echo and Alexa, we decided to invest a bit of our time to create a prototype. That prototype showed how an Alexa skill - a voice application for Alexa - could allow our customers to access their account information simply using their voice and their ears. That prototype very quickly became a project of its own, supported by the customer business and by Amazon. Our goal was not to create a prototype anymore but to create the first EDF Energy vocal application and to be ready for the launch of the Amazon Echo in the UK, scheduled a few months later.
  4. On the 28th of Septembre 2016, Amazon released the Echo family in the UK, and EDF Energy was one of the 12 launch partners, alongside companies such as Uber, Sky Sports or The Guardian. It was a massive success for us. In only a few months, we managed to familiarise ourselves with this new technology, and to roll it out to our customers. Following this success, we carried on exploring voice application, but also other conversational systems like chatbots. EDF Energy skill we made in 2016 was good, but it wasn't perfect. We made mistakes because this technology was very young; because we knew very little about conversational principles, and we knew even less when this conversation happens between a system and a human. And I’ll come back on that later.
  5. Today, the Echo Family is now a lot bigger, going from the more traditional smart speaker to the devices with screens, or even alexa-enabled security cameras…
  6. And it’s not just about Alexa. Although Amazon has made smart speakers mainstream, there’s now voice assistant everywhere, starting on your smartphone, maybe on your telly, or even in your car. You might even have a voice-enabled microwave! Anyway, the stats don’t really lies, there’s more and more sales of voice-enabled devices, and more and more voice assistants in use.
  7. Right, let’s now talk about Voice Design
  8. One of the main advantages that people have talked about with voice systems is how natural it can feel. But for the most of us, it isn’t natural. Even though we dreamt about it since Science-Fiction movies exist, talking to black boxes is still something very new for us. and it takes some time to adapt to these machine. It’s a new kind of conversation.
  9. One of the difficult aspect of voice system, is for most systems, the lack of screen! There's something called Cognitive Load, which is roughly the amount of effort your memory need to retain some information. When using a voice-only device, this load can quickly become an overload. Let's take an example. Imagine asking for the best restaurant in London, and Alexa replies to you with a list of restaurants rated 4 or 5, including their name, their address, the type of food they serve and an indicator of price. I can guarantee you that after the fifth restaurant, you'll have forgotten everything about the third one on the list. Usually we say that one response should not contain more than 5 different bit of information. And there’s even a more radical approach which is known as the “one-breath” rule. One should be able to say the response out loud in one single breath.
  10. Working with a voice-only device means that the information you are going to give is only going to be alive in your users' memory. Which means that the answer you provide should be as short and as relevant as possible. And that it should also be simple for your user to get that information again in case they haven't retained it the first time. If you haven’t heard about these, Paul Grice, a British philosopher of language, wrote the maxims of conversation. And although he did not have in mind automated systems, these four maxims works very well when you need to design any kind of dialogue.
  11. One of our research project last year was to look at how we can solve problems around cognitive overload, confirmation and speech recognition error? We’ve explored multiple solutions, some using an external device, and some using devices such as the Echo Show, and the Alexa Presentation Language, I’ll talk a bit more about that during the code part.
  12. AI and Bots is different, chatbots are a communication channel, and interface. Which can deliver a product powered by AI. Which mean, you don’t need to be a deep learning expert to create chatbots. There’s loads of existing tools allowing you to kickstart your project. Text and voice, I said it, are different. They both have pros and cons, are the use cases you can apply these technologies to are also very different. Think about time for example, voice use cases are usually beginning and ending in a short period. Designing dialogs for these two technologies is different. I’ve talk quite a lot about the platforms, but keep it in mind, it’s important that it matches the task and your user expectations. UX First. Always think about the customers first. They are the ones that will be interacting with your systems. You can spend month benchmarking natural language processing engine, if your conversation and dialog are not well designed, it won’t matter what NLP is behind, your customers will not even get far enough to see the different. Discoverability. Conversational experiences are very new for our customers. And it’s quite unlikely that your customers will be able to find your bot naturally, so make your are using other channels to push your users into this new experience. And once they have found your bot, make sure that is really clear what they are able to do with this bot, help them familiarise with the bot, don’t let me them explore by themselves. Finally, II don’t think everything can be transformed into bots. Even though it might be technically possible, it does not mean we should do it this way. A conversational system may not be the best interface to your product. I’ve got a video to highlight this thought.
  13. If you don’t have an AWS Account, Amazon creates a specific one just for your skill, but it’s limited, so if you’re comfortable with AWS, I’d recommend using your own account. Amazon provides SDK for Node.js, Java and Python. But realistically, you can use whatever language you want, as long as you can read the request from amazon and reply to the expected format. I’ve seen people using Ruby for example. I would not recommend using that. I would recommend sticking with AWS Lambda, Node, Python or Java, that’s up to you.
  14. https://developer.amazon.com/docs/custom-skills/speech-synthesis-markup-language-ssml-reference.html https://developer.amazon.com/docs/custom-skills/speechcon-reference-interjections-english-uk.html https://developer.amazon.com/docs/hosted-skills/build-a-skill-end-to-end-using-an-alexa-hosted-skill.html https://developer.amazon.com/it/docs/alexa-presentation-language/apl-support-for-the-nodejs-2-0-sdk-in-your-skill.html
  15. You can use async/await in handle
  16. If you have any questions, I think we still have about XX minutes and otherwise feel free to contact me on Twitter, or via email. Thank you!