Desenvolver para dispositivos de voz parece um universo à parte, mas Celso Kitamura desmonta essa ideia logo no início da conversa: a arquitetura por trás de uma skill da Alexa é a mesma arquitetura web que qualquer desenvolvedor já domina. A partir daí, a conversa percorre o que é a Alexa, como se programa para ela, o modelo de monetização, testes, privacidade e para onde esse mercado caminha.
Celso Kitamura é desenvolvedor com experiência prática em criação de skills para a Alexa, incluindo projetos comerciais de peso — ele participou do desenvolvimento do jogo de voz do último filme dos Transformers, com falas gravadas especialmente pelo dublador brasileiro do Optimus Prime. Mantém um canal no YouTube dedicado a esse universo, ensinando quem quer aprender a programar aplicativos de voz, e é essa vivência que sustenta praticamente todos os exemplos trazidos na conversa.
Celso reduz a suposta complexidade do desenvolvimento para Alexa a algo já conhecido: existe um back-end, que roda em servidor, tem acesso a banco de dados e regras de negócio como qualquer outra aplicação, e existe um front-end — só que em vez de páginas e telas, a interface é de voz (VUI, Voice User Interface). O desenvolvedor não precisa dominar reconhecimento de fala ou NLP porque a Alexa já entrega essa parte pronta.
"No caso de um aplicativo de voz, a única coisa que muda é o front end (...) a parte de trás ela é muito semelhante do que a gente costuma trabalhar normalmente." por Celso Kitamura
Existe a opção Alexa-Hosted, dentro do próprio console de desenvolvedor, gratuita mas limitada em espaço, recursos e tráfego — pensada para quem está aprendendo. E existe a opção de hospedar o back-end fora, em qualquer nuvem (AWS, Azure etc.) e em qualquer linguagem que o provedor suporte, desde que a skill siga o padrão de integração documentado pela Amazon. Celso cita inclusive testes próprios usando C# na AWS.
"Se for uma skill que tiver muito acesso, de repente viralizar (...) o ideal é que você tenha o back-end dela fora para não ultrapassar esse limite." por Celso Kitamura
A loja de skills funciona como qualquer app store: catálogo, certificação obrigatória antes de publicar, e possibilidade de cobrar pelo conteúdo — assinatura, pacotes ou período de teste gratuito. Nos Estados Unidos isso já roda, incluindo comissão sobre compras de produtos da Amazon feitas dentro da skill. No Brasil, essa monetização ainda não está disponível, mas nada impede um desenvolvedor brasileiro de publicar uma skill paga para a loja americana, bastando escolher o idioma padrão certo na hora de submeter.
"Lá nos Estados Unidos (...) ali você consegue cobrar pela skill, cobrar pelo conteúdo da skill." por Celso Kitamura
Um desenvolvedor consegue testar sua própria skill sem publicá-la, bastando usar a mesma conta cadastrada como desenvolvedor para configurar o dispositivo — a skill aparece automaticamente em uma aba "em desenvolvimento". Antes do envio final para certificação, existe ainda o teste beta: uma lista de e-mails recebe convites para instalar a skill e dar feedback, sem que ela fique visível na loja pública.
"Se você entra na loja e você não encontra, a pessoa só vai conseguir instalar, ativar a skill através desse e-mail convite." por Celso Kitamura
Celso compara o momento atual dos aplicativos de voz ao início dos smartphones, quando os apps eram cópias malfeitas de programas de desktop. Hoje, quem mais investe em skills são grandes marcas fazendo marketing. Mas ele aponta uma inversão de responsabilidade importante: em interfaces de tela, o usuário se adapta ao menu; em voz, é o desenvolvedor quem precisa mapear todas as formas possíveis de um usuário pedir a mesma coisa, porque não há tela para lembrar o usuário do que o app faz.
"Agora os papéis se inverteram. O desenvolvedor precisa mapear todas as formas com que um usuário pode pedir aquela funcionalidade." por Celso Kitamura
"Acho que a gente tá um pouco no meio do caminho já (...) existem muitas pessoas com necessidades especiais que podem utilizar Alexa para N coisas." por Celso Kitamura